Matcher 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
对 java 执行匹配操作的引擎。
[Android.Runtime.Register("java/util/regex/Matcher", DoNotGenerateAcw=true)]
public sealed class Matcher : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Util.Regex.IMatchResult
[<Android.Runtime.Register("java/util/regex/Matcher", DoNotGenerateAcw=true)>]
type Matcher = class
inherit Object
interface IMatchResult
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 继承
- 属性
- 实现
注解
通过解释 对 java.lang.CharSequence 字符序列执行匹配操作的 Pattern
引擎。
通过调用模式的 Pattern#matcher matcher
方法,从模式创建匹配程序。 创建后,匹配程序可用于执行三种不同类型的匹配操作:
<ul>
<李>
方法 #matches matches
尝试将整个输入序列与 模式匹配。
</李>
<李>
方法 #lookingAt lookingAt
尝试从开头开始将输入序列与 模式匹配。
</李>
<李>
方法 #find find
扫描输入序列,查找与模式匹配的下一个子序列。
</李>
</ul>
其中每个方法都返回一个指示成功或失败的布尔值。 可以通过查询匹配程序的状态来获取有关成功匹配的详细信息。
匹配程序在其称为 区域的输入子集中查找匹配项。 默认情况下,该区域包含匹配程序的所有输入。 可以通过 方法修改区域, #region(int, int) region
并通过 #regionStart() regionStart
和 #regionEnd() regionEnd
方法进行查询。 可以更改区域边界与某些模式构造交互的方式。 有关更多详细信息,请参阅 #useAnchoringBounds(boolean) useAnchoringBounds
和 #useTransparentBounds(boolean) useTransparentBounds
。
此类还定义用于将匹配子序列替换为新字符串的方法,如果需要,可以根据匹配结果计算其内容。 #appendReplacement appendReplacement
#appendTail appendTail
和 方法可以结合使用,以便将结果收集到现有的字符串缓冲区或字符串生成器中。 或者,可以使用更方便 #replaceAll replaceAll
的方法创建一个字符串,在该字符串中替换输入序列中的每个匹配子序列。
匹配者的显式状态包括最近成功匹配的开始和结束索引。 它还包括模式中每个捕获组捕获的输入子序列的开始和结束索引,以及此类子序列的总计数。 为方便起见,还提供了用于以字符串形式返回这些捕获的子序列的方法。
匹配者的显式状态最初是未定义的;尝试在成功匹配之前查询其任何部分将导致 IllegalStateException
引发 。 匹配程序显式状态由每个匹配操作重新计算。
匹配程序的隐式状态包括输入字符序列和 追加位置,该位置最初为零,并由 #appendReplacement appendReplacement
方法更新。
可以通过调用其 #reset()
方法显式重置匹配程序,如果需要新的输入序列,可以调用其 #reset(java.lang.CharSequence) reset(CharSequence)
方法。 重置匹配程序会放弃其显式状态信息,并将追加位置设置为零。
此类的实例对于多个并发线程使用是不安全的。
在 1.4 中添加。
的 java.util.regex.Matcher
Java 文档。
此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。
属性
Class |
返回此 |
Handle |
基础 Android 实例的句柄。 (继承自 Object) |
HasAnchoringBounds |
查询此匹配程序的区域边界的定位。 |
HasTransparentBounds |
查询此匹配程序的区域边界的透明度。 |
JniIdentityHashCode |
对 java 执行匹配操作的引擎。 (继承自 Object) |
JniPeerMembers |
对 java 执行匹配操作的引擎。 |
PeerReference |
对 java 执行匹配操作的引擎。 (继承自 Object) |
ThresholdClass |
此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。 (继承自 Object) |
ThresholdType |
此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。 (继承自 Object) |
方法
AppendReplacement(StringBuffer, String) |
实现非终端追加和替换步骤。 |
AppendReplacement(StringBuilder, String) |
实现非终端追加和替换步骤。 |
AppendTail(StringBuffer) |
实现终端追加和替换步骤。 |
AppendTail(StringBuilder) |
实现终端追加和替换步骤。 |
Clone() |
创建并返回此对象的副本。 (继承自 Object) |
Dispose() |
对 java 执行匹配操作的引擎。 (继承自 Object) |
Dispose(Boolean) |
对 java 执行匹配操作的引擎。 (继承自 Object) |
End() |
返回最后一个字符匹配后的偏移量。 |
End(Int32) |
返回给定组在上一个匹配操作期间捕获的子序列的最后一个字符之后的偏移量。 |
End(String) |
返回给定命名捕获组在上一个匹配操作期间捕获的子序列的最后一个字符之后的偏移量。 |
Equals(Object) |
指示某个其他对象是否“等于”此对象。 (继承自 Object) |
Find() |
尝试查找与模式匹配的输入序列的下一个子序列。 |
Find(Int32) |
重置此匹配程序,然后尝试查找与模式匹配的输入序列的下一个子序列,从指定的索引开始。 |
GetHashCode() |
返回对象的哈希代码值。 (继承自 Object) |
Group() |
返回由上一个匹配项匹配的输入子序列。 |
Group(Int32) |
返回给定组在上一个匹配操作期间捕获的输入子序列。 |
Group(String) |
返回给定的命名捕获组在上一个匹配操作期间捕获的输入子序列。 |
GroupCount() |
返回此匹配程序模式中捕获组的数目。 |
HitEnd() |
如果搜索引擎在此匹配程序执行的最后一个匹配操作中命中输入结束,则返回 true。 |
JavaFinalize() |
当垃圾回收确定不再引用对象时,由垃圾回收器对对象调用。 (继承自 Object) |
LookingAt() |
尝试从区域开头开始的输入序列与 模式匹配。 |
Matches() |
尝试将整个区域与模式匹配。 |
Notify() |
唤醒正在等待此对象的监视器的单个线程。 (继承自 Object) |
NotifyAll() |
唤醒正在等待此对象的监视器的所有线程。 (继承自 Object) |
Pattern() |
返回此匹配程序解释的模式。 |
QuoteReplacement(String) |
返回指定的 |
Region(Int32, Int32) |
设置此匹配程序区域的限制。 |
RegionEnd() |
报告此匹配程序区域的结束索引 (独占) 。 |
RegionStart() |
报告此匹配程序区域的开始索引。 |
ReplaceAll(IFunction) |
将与模式匹配的输入序列的每个子序列替换为将给定替换器函数应用于与此子序列对应的匹配结果的结果。 |
ReplaceAll(String) |
使用给定的替换字符串替换与模式匹配的输入序列的每个子序列。 |
ReplaceFirst(IFunction) |
将匹配模式的输入序列的第一个子序列替换为将给定替换器函数应用于对应于该子序列的匹配结果的结果。 |
ReplaceFirst(String) |
使用给定的替换字符串替换与模式匹配的输入序列的第一个子序列。 |
RequireEnd() |
如果更多输入可以将正匹配更改为负匹配,则返回 true。 |
Reset() |
重置此匹配程序。 |
Reset(ICharSequence) |
使用新的输入序列重置此匹配程序。 |
Reset(String) |
使用新的输入序列重置此匹配程序。 |
SetHandle(IntPtr, JniHandleOwnership) |
设置 Handle 属性。 (继承自 Object) |
Start() |
返回上一个匹配项的开始索引。 |
Start(Int32) |
返回给定组在上一个匹配操作期间捕获的子序列的开始索引。 |
Start(String) |
返回给定的命名捕获组在上一个匹配操作期间捕获的子序列的开始索引。 |
ToArray<T>() |
对 java 执行匹配操作的引擎。 (继承自 Object) |
ToMatchResult() |
以 的形式 |
ToString() |
返回对象的字符串表示形式。 (继承自 Object) |
UnregisterFromRuntime() |
对 java 执行匹配操作的引擎。 (继承自 Object) |
UseAnchoringBounds(Boolean) |
设置此匹配程序的区域边界的定位。 |
UsePattern(Pattern) |
|
UseTransparentBounds(Boolean) |
设置此匹配程序的区域边界的透明度。 |
Wait() |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<> (继承自 Object) |
Wait(Int64) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<> (继承自 Object) |
Wait(Int64, Int32) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<> (继承自 Object) |
显式接口实现
IJavaPeerable.Disposed() |
对 java 执行匹配操作的引擎。 (继承自 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
对 java 执行匹配操作的引擎。 (继承自 Object) |
IJavaPeerable.Finalized() |
对 java 执行匹配操作的引擎。 (继承自 Object) |
IJavaPeerable.JniManagedPeerState |
对 java 执行匹配操作的引擎。 (继承自 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
对 java 执行匹配操作的引擎。 (继承自 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
对 java 执行匹配操作的引擎。 (继承自 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
对 java 执行匹配操作的引擎。 (继承自 Object) |
扩展方法
JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
JavaCast<TResult>(IJavaObject) |
对 java 执行匹配操作的引擎。 |
GetJniTypeName(IJavaPeerable) |
对 java 执行匹配操作的引擎。 |