Matcher.ReplaceAll 方法

定义

重载

ReplaceAll(IFunction)

将匹配模式的输入序列的每个子序列替换为将给定替换器函数应用于与此子序列相对应的匹配结果的结果。

ReplaceAll(String)

将匹配模式的输入序列的每个子序列替换为给定的替换字符串。

ReplaceAll(IFunction)

将匹配模式的输入序列的每个子序列替换为将给定替换器函数应用于与此子序列相对应的匹配结果的结果。

[Android.Runtime.Register("replaceAll", "(Ljava/util/function/Function;)Ljava/lang/String;", "", ApiSince=34)]
public string ReplaceAll(Java.Util.Functions.IFunction replacer);
[<Android.Runtime.Register("replaceAll", "(Ljava/util/function/Function;)Ljava/lang/String;", "", ApiSince=34)>]
member this.ReplaceAll : Java.Util.Functions.IFunction -> string

参数

replacer
IFunction

要应用于此匹配程序返回替换字符串的匹配结果的函数。

返回

通过将每个匹配的子序列替换为将替换器函数应用于匹配的子序列的结果,并根据需要替换捕获的子序列来构造的字符串。

属性

注解

将匹配模式的输入序列的每个子序列替换为将给定替换器函数应用于与此子序列相对应的匹配结果的结果。 函数引发的异常将中继到调用方。

此方法首先重置此匹配程序。 然后,它会扫描输入序列,查找模式的匹配项。 不属于任何匹配项的字符将直接追加到结果字符串中;将每个匹配项替换为应用返回替换字符串的替换器函数的结果。 每个替换字符串可能包含对捕获的子序列的引用,就像在方法中 #appendReplacement appendReplacement 一样。

请注意,替换字符串中的反斜杠 (\) 和美元符号 ($) 可能会导致结果与将其视为文本替换字符串时的结果不同。 美元符号可以被视为对捕获的子序列的引用,如前所述,反斜杠用于转义替换字符串中的文本字符。

给定正则表达式 dog、输入 "zzzdogzzzdogzzz"和函数 mr -> mr.group().toUpperCase(),对该表达式的匹配程序调用此方法将产生字符串 "zzzDOGzzzDOGzzz"

调用此方法会更改此匹配程序的状态。 如果要在进一步匹配操作中使用匹配程序,则应首先重置它。

替换器函数不应在替换期间修改此匹配程序的状态。 此方法将尽最大努力在检测到此类修改时引发 java.util.ConcurrentModificationException

传递到替换器函数的每个匹配结果的状态保证仅在替换器函数调用期间为常量,并且仅当替换器函数不修改此匹配程序的状态时。

已在 9 中添加。

适用于 . 的 java.util.regex.Matcher.replaceAll(java.util.function.Function<java.util.regex.MatchResult, java.lang.String>)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

ReplaceAll(String)

将匹配模式的输入序列的每个子序列替换为给定的替换字符串。

[Android.Runtime.Register("replaceAll", "(Ljava/lang/String;)Ljava/lang/String;", "")]
public string ReplaceAll(string replacement);
[<Android.Runtime.Register("replaceAll", "(Ljava/lang/String;)Ljava/lang/String;", "")>]
member this.ReplaceAll : string -> string

参数

replacement
String

替换字符串

返回

通过替换字符串替换每个匹配的子项来构造的字符串,根据需要替换捕获的子序列

属性

注解

将匹配模式的输入序列的每个子序列替换为给定的替换字符串。

此方法首先重置此匹配程序。 然后,它会扫描输入序列,查找模式的匹配项。 不属于任何匹配项的字符将直接追加到结果字符串中;每个匹配项都由替换字符串替换结果中。 替换字符串可能包含对捕获的子序列的引用,就像在方法中一 #appendReplacement appendReplacement 样。

请注意,替换字符串中的反斜杠 (\) 和美元符号 ($) 可能会导致结果与将其视为文本替换字符串时的结果不同。 美元符号可以被视为对捕获的子序列的引用,如前所述,反斜杠用于转义替换字符串中的文本字符。

给定正则表达式 a*b、输入 "aabfooaabfooabfoob"和替换字符串 "-",对该表达式的匹配程序调用此方法将生成字符串 "-foo-foo-foo-"

调用此方法会更改此匹配程序的状态。 如果要在进一步匹配操作中使用匹配程序,则应首先重置它。

适用于 . 的 java.util.regex.Matcher.replaceAll(java.lang.String)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于