Die JavaScript-Methode replaceAll () gibt eine neue Zeichenfolge zurück, bei der alle Übereinstimmungen eines Musters durch eine Ersetzung ersetzt werden.
Die Syntax von replaceAll()
lautet:
str.replaceAll(pattern, replacement)
Hier str
ist eine Zeichenfolge.
replaceAll () Parameter
Die replaceAll()
Methode umfasst:
pattern
- entweder eine Teilzeichenfolge oder eine Regex, die ersetzt werden sollreplacement
- daspattern
wird durch dieses ersetztreplacement
(kann entweder eine Zeichenfolge oder eine Funktion sein)
Rückgabewert von replaceAll ()
- Die
replaceAll()
Methode gibt eine neue Zeichenfolge zurück, wobei alle Übereinstimmungen eines Musters durch eine Ersetzung ersetzt werden.
Hinweis: A RegExp
ohne das globale Flag (" g ") löst a aus TypeError
.
Beispiel 1: Verwenden von replaceAll ()
const text = "Java is awesome. Java is fun."; // passing a string as the first parameter let pattern = "Java"; let new_text = text.replaceAll(pattern, "JavaScript"); console.log(new_text); // passing a regex as the first parameter pattern = /Java/g; new_text = text.replaceAll(pattern, "JavaScript"); console.log(new_text);
Ausgabe
JavaScript ist großartig. JavaScript macht Spaß JavaScript macht Spaß. JavaScript macht Spaß.
Ersetzen Sie ohne Berücksichtigung von Groß- / Kleinbuchstaben
Die replaceAll()
Methode unterscheidet zwischen Groß- und Kleinschreibung. Um das Ersetzen ohne Berücksichtigung der Groß- und Kleinschreibung durchzuführen, müssen Sie einen regulären Ausdruck mit einem i
Schalter verwenden (Suche ohne Berücksichtigung der Groß- und Kleinschreibung).
Beispiel 2: Ersetzen ohne Berücksichtigung der Groß- und Kleinschreibung
const text = "javaSCRIPT JavaScript"; // all occurrences of javascript is replaced let pattern = /javascript/gi; // case-insensitive and global search let new_text = text.replaceAll(pattern, "JS"); console.log(new_text); // JS JS
Ausgabe
JS JS
Beispiel 3: Übergabe der Funktion als Ersatz
Sie können der replaceAll()
Methode auch eine Funktion (anstelle einer Zeichenfolge) als zweiten Parameter übergeben .
const text = "3.1415"; // generate a random digit between 0 and 9 function generateRandomDigit() ( return Math.floor(Math.random() * 10); ) // regex to match a digit const pattern = /d/g; const new_text = text.replaceAll(pattern, generateRandomDigit); console.log(new_text);
Ausgabe
4.3518
Wenn Sie dieses Programm ausführen, erhalten Sie möglicherweise eine andere Ausgabe. Dies liegt daran, dass die erste Ziffer im Text durch eine zufällige Ziffer zwischen 0 und 9 ersetzt wird .
Empfohlene Lektüre: JavaScript String replace ()