Condividi tramite


Matcher.ReplaceAll Metodo

Definizione

Overload

ReplaceAll(IFunction)

Sostituisce ogni sottosequenza della sequenza di input che corrisponde al criterio con il risultato dell'applicazione della funzione replacer specificata al risultato della corrispondenza di questo matcher corrispondente a tale sottosequenza.

ReplaceAll(String)

Sostituisce ogni sottosequenza della sequenza di input che corrisponde al criterio con la stringa di sostituzione specificata.

ReplaceAll(IFunction)

Sostituisce ogni sottosequenza della sequenza di input che corrisponde al criterio con il risultato dell'applicazione della funzione replacer specificata al risultato della corrispondenza di questo matcher corrispondente a tale sottosequenza.

[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

Parametri

replacer
IFunction

Funzione da applicare al risultato della corrispondenza di questo matcher che restituisce una stringa di sostituzione.

Restituisce

Stringa costruita sostituendo ogni sottosequenza corrispondente con il risultato dell'applicazione della funzione replacer a tale sottosequenza corrispondente, sostituendo le sottosequenze acquisite in base alle esigenze.

Attributi

Commenti

Sostituisce ogni sottosequenza della sequenza di input che corrisponde al criterio con il risultato dell'applicazione della funzione replacer specificata al risultato della corrispondenza di questo matcher corrispondente a tale sottosequenza. Le eccezioni generate dalla funzione vengono inoltrate al chiamante.

Questo metodo reimposta prima di tutto questo matcher. Analizza quindi la sequenza di input cercando le corrispondenze del modello. I caratteri che non fanno parte di alcuna corrispondenza vengono accodati direttamente alla stringa di risultato; ogni corrispondenza viene sostituita nel risultato applicando la funzione replacer che restituisce una stringa di sostituzione. Ogni stringa di sostituzione può contenere riferimenti a sottosequenze acquisite come nel #appendReplacement appendReplacement metodo .

Si noti che le barre rovesciate () e i segni di dollaro (\$) in una stringa di sostituzione possono causare risultati diversi rispetto a quelli considerati come stringa di sostituzione letterale. I segni di dollaro possono essere considerati come riferimenti alle sottosequenze acquisite come descritto in precedenza e le barre rovesciate vengono usate per eseguire l'escape dei caratteri letterali nella stringa di sostituzione.

Data l'espressione dogregolare , l'input "zzzdogzzzdogzzz"e la funzione mr -> mr.group().toUpperCase(), una chiamata di questo metodo su un matcher per tale espressione restituirà la stringa "zzzDOGzzzDOGzzz".

Il richiamo di questo metodo modifica lo stato del matcher. Se il matcher deve essere usato in altre operazioni di corrispondenza, deve prima essere reimpostato.

La funzione replacer non deve modificare lo stato del matcher durante la sostituzione. Questo metodo, su base ottimale, genera un'eccezione java.util.ConcurrentModificationException se viene rilevata tale modifica.

Lo stato di ogni risultato di corrispondenza passato alla funzione replacer è garantito che sia costante solo per la durata della chiamata di funzione replacer e solo se la funzione replacer non modifica lo stato del matcher.

Aggiunta in 9.

Documentazione java per java.util.regex.Matcher.replaceAll(java.util.function.Function<java.util.regex.MatchResult, java.lang.String>).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

ReplaceAll(String)

Sostituisce ogni sottosequenza della sequenza di input che corrisponde al criterio con la stringa di sostituzione specificata.

[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

Parametri

replacement
String

Stringa da usare per la sostituzione

Restituisce

Stringa costruita sostituendo ogni sottosequenza corrispondente dalla stringa di sostituzione, sostituendo le sottosequenze acquisite in base alle esigenze

Attributi

Commenti

Sostituisce ogni sottosequenza della sequenza di input che corrisponde al criterio con la stringa di sostituzione specificata.

Questo metodo reimposta prima di tutto questo matcher. Analizza quindi la sequenza di input cercando le corrispondenze del modello. I caratteri che non fanno parte di alcuna corrispondenza vengono accodati direttamente alla stringa di risultato; ogni corrispondenza viene sostituita nel risultato dalla stringa di sostituzione. La stringa di sostituzione può contenere riferimenti alle sottosequenze acquisite come nel #appendReplacement appendReplacement metodo .

Si noti che le barre rovesciate () e i segni di dollaro (\$) nella stringa di sostituzione possono causare risultati diversi rispetto a quelli considerati come stringa di sostituzione letterale. I segni di dollaro possono essere considerati come riferimenti alle sottosequenze acquisite come descritto in precedenza e le barre rovesciate vengono usate per eseguire l'escape dei caratteri letterali nella stringa di sostituzione.

Dato l'espressione a*bregolare , l'input "aabfooaabfooabfoob"e la stringa "-"di sostituzione , una chiamata di questo metodo su un matcher per tale espressione restituirà la stringa "-foo-foo-foo-".

Il richiamo di questo metodo modifica lo stato del matcher. Se il matcher deve essere usato in altre operazioni di corrispondenza, deve prima essere reimpostato.

Documentazione java per java.util.regex.Matcher.replaceAll(java.lang.String).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a