Freigeben über


Matcher.ReplaceAll Methode

Definition

Überlädt

ReplaceAll(IFunction)

Ersetzt jede Untermenge der Eingabesequenz, die dem Muster entspricht, mit dem Ergebnis, dass die angegebene Ersetzungsfunktion auf das Übereinstimmungsergebnis dieses Matchers angewendet wird, das dieser Untermenge entspricht.

ReplaceAll(String)

Ersetzt jede Untermenge der Eingabesequenz, die mit dem Muster mit der angegebenen Ersetzungszeichenfolge übereinstimmt.

ReplaceAll(IFunction)

Ersetzt jede Untermenge der Eingabesequenz, die dem Muster entspricht, mit dem Ergebnis, dass die angegebene Ersetzungsfunktion auf das Übereinstimmungsergebnis dieses Matchers angewendet wird, das dieser Untermenge entspricht.

[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

Parameter

replacer
IFunction

Die Funktion, die auf das Übereinstimmungsergebnis dieses Matchers angewendet werden soll, das eine Ersetzungszeichenfolge zurückgibt.

Gibt zurück

Die Zeichenfolge, die erstellt wird, indem jede übereinstimmende Untersequence durch das Ergebnis der Anwendung der Ersetzungsfunktion auf die übereinstimmende Untersequence ersetzt wird, wobei erfasste Untersequencen nach Bedarf ersetzt werden.

Attribute

Hinweise

Ersetzt jede Untermenge der Eingabesequenz, die dem Muster entspricht, mit dem Ergebnis, dass die angegebene Ersetzungsfunktion auf das Übereinstimmungsergebnis dieses Matchers angewendet wird, das dieser Untermenge entspricht. Ausnahmen, die von der Funktion ausgelöst werden, werden an den Aufrufer weitergeleitet.

Diese Methode setzt zuerst diesen Matcher zurück. Anschließend wird die Eingabesequenz überprüft, die nach Übereinstimmungen des Musters sucht. Zeichen, die nicht Teil einer Übereinstimmung sind, werden direkt an die Ergebniszeichenfolge angefügt. Jede Übereinstimmung wird im Ergebnis durch die Anwendung der Ersetzungsfunktion ersetzt, die eine Ersetzungszeichenfolge zurückgibt. Jede Ersetzungszeichenfolge kann Verweise auf erfasste Untersequences wie in der #appendReplacement appendReplacement Methode enthalten.

Beachten Sie, dass umgekehrte Schrägstriche (\) und Dollarzeichen ($) in einer Ersetzungszeichenfolge dazu führen können, dass sich die Ergebnisse unterscheiden als wenn sie als Literalersetzungszeichenfolge behandelt werden. Dollarzeichen können wie oben beschrieben als Verweise auf erfasste Untersequences behandelt werden, und umgekehrte Schrägstriche werden verwendet, um Literalzeichen in der Ersetzungszeichenfolge zu escapen.

Aufgrund des regulären Ausdrucks dog, der Eingabe "zzzdogzzzdogzzz"und der Funktion mr -> mr.group().toUpperCase()würde ein Aufruf dieser Methode für einen Abgleich für diesen Ausdruck die Zeichenfolge "zzzDOGzzzDOGzzz"liefern.

Durch Aufrufen dieser Methode wird der Zustand dieses Übereinstimmungers geändert. Wenn der Matcher in weiteren Abgleichsvorgängen verwendet werden soll, sollte er zuerst zurückgesetzt werden.

Die Ersetzungsfunktion sollte den Zustand dieses Übereinstimmungers während des Austauschs nicht ändern. Diese Methode löst auf best-effort-Basis eine java.util.ConcurrentModificationException solche Änderung aus, wenn diese Änderung erkannt wird.

Der Zustand jedes Übereinstimmungsergebnisses, das an die Ersetzungsfunktion übergeben wird, ist garantiert nur für die Dauer des Ersetzungsfunktionsaufrufs konstant und nur, wenn die Ersetzungsfunktion den Zustand dieses Abgleichs nicht ändert.

Hinzugefügt in 9.

Java-Dokumentation für java.util.regex.Matcher.replaceAll(java.util.function.Function<java.util.regex.MatchResult, java.lang.String>).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

ReplaceAll(String)

Ersetzt jede Untermenge der Eingabesequenz, die mit dem Muster mit der angegebenen Ersetzungszeichenfolge übereinstimmt.

[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

Parameter

replacement
String

Die Ersatzzeichenfolge

Gibt zurück

Die Zeichenfolge, die erstellt wird, indem jede übereinstimmende Untermenge durch die Ersetzungszeichenfolge ersetzt wird, wobei erfasste Untersequencen nach Bedarf ersetzt werden.

Attribute

Hinweise

Ersetzt jede Untermenge der Eingabesequenz, die mit dem Muster mit der angegebenen Ersetzungszeichenfolge übereinstimmt.

Diese Methode setzt zuerst diesen Matcher zurück. Anschließend wird die Eingabesequenz überprüft, die nach Übereinstimmungen des Musters sucht. Zeichen, die nicht Teil einer Übereinstimmung sind, werden direkt an die Ergebniszeichenfolge angefügt. jede Übereinstimmung wird im Ergebnis durch die Ersetzungszeichenfolge ersetzt. Die Ersetzungszeichenfolge kann Verweise auf erfasste Untersequences wie in der #appendReplacement appendReplacement Methode enthalten.

Beachten Sie, dass umgekehrte Schrägstriche (\) und Dollarzeichen ($) in der Ersetzungszeichenfolge dazu führen können, dass sich die Ergebnisse unterscheiden, als wenn sie als Literalersetzungszeichenfolge behandelt wurden. Dollarzeichen können wie oben beschrieben als Verweise auf erfasste Untersequences behandelt werden, und umgekehrte Schrägstriche werden verwendet, um Literalzeichen in der Ersetzungszeichenfolge zu escapen.

Aufgrund des regulären Ausdrucks a*b, der Eingabe "aabfooaabfooabfoob"und der Ersetzungszeichenfolge "-"würde ein Aufruf dieser Methode für einen Abgleich für diesen Ausdruck die Zeichenfolge "-foo-foo-foo-"liefern.

Durch Aufrufen dieser Methode wird der Zustand dieses Übereinstimmungers geändert. Wenn der Matcher in weiteren Abgleichsvorgängen verwendet werden soll, sollte er zuerst zurückgesetzt werden.

Java-Dokumentation für java.util.regex.Matcher.replaceAll(java.lang.String).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: