次の方法で共有


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

置換文字列を返すこのマッチャーの一致結果に適用される関数。

戻り値

一致する各サブシーケンスを、一致したサブシーケンスに replacer 関数を適用した結果に置き換えて構築された文字列。キャプチャされたサブシーケンスは必要に応じて置き換えられます。

属性

注釈

パターンに一致する入力シーケンスのすべてのサブシーケンスを、そのサブシーケンスに対応するこのマッチャーの一致結果に指定された置換関数を適用した結果に置き換えます。 関数によってスローされた例外は、呼び出し元に中継されます。

このメソッドは、最初にこのマッチャーをリセットします。 次に、入力シーケンスをスキャンして、パターンの一致を探します。 一致の一部ではない文字は、結果文字列に直接追加されます。各一致は、置換文字列を返す replacer 関数を適用することによって結果で置き換えられます。 各置換文字列には、メソッドのようにキャプチャされたサブシーケンスへの参照が #appendReplacement appendReplacement 含まれる場合があります。

置換文字列の円記号 (\) とドル記号 ($) によって、結果がリテラル置換文字列として扱われている場合とは異なる場合があることに注意してください。 ドル記号は、前述のようにキャプチャされたサブシーケンスへの参照として扱われ、円記号は置換文字列内のリテラル文字をエスケープするために使用されます。

正規表現 dog、入力 "zzzdogzzzdogzzz"、関数 mr -> mr.group().toUpperCase()を指定すると、その式のマッチャーでこのメソッドを呼び出すと、文字列 "zzzDOGzzzDOGzzz"が生成されます。

このメソッドを呼び出すと、このマッチャーの状態が変更されます。 さらに一致する操作でマッチャーを使用する場合は、最初にリセットする必要があります。

replacer 関数は、置換中にこのマッチャーの状態を変更しないでください。 このメソッドは、ベスト エフォートベースで、そのような変更が検出された場合にスロー java.util.ConcurrentModificationException します。

replacer 関数に渡される各一致結果の状態は、replacer 関数呼び出しの期間中、および置換関数がこのマッチャーの状態を変更しない場合にのみ、定数であることが保証されます。

9 に追加されました。

の Java ドキュメントjava.util.regex.Matcher.replaceAll(java.util.function.Function<java.util.regex.MatchResult, java.lang.String>)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 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 ドキュメントjava.util.regex.Matcher.replaceAll(java.lang.String)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象