Gegeben eine Zeichenfolge wie „Test abc test test abc test test test abc test test abc“, die das erste Vorkommen von ersetzt „abc“ mit string.replace('abc', '') ist unzureichend. Bei dieser Frage geht es darum, wie man alle Vorkommen einer Zeichenfolge in JavaScript ersetzt.
Moderne Lösung (ECMAScript 2021 und höher):
Für moderne Browser die die ECMAScript 2021-Spezifikation unterstützen, können Sie die Methode String.replaceAll() verwenden:
<code class="javascript">str = str.replaceAll('abc', '');</code>
Legacy-Browser-Lösung:
Für ältere oder Legacy-Browser, die nicht verfügbar sind String.replaceAll() kann die folgende benutzerdefinierte Funktion verwendet werden:
<code class="javascript">function replaceAll(str, find, replace) { return str.replace(new RegExp(escapeRegExp(find), 'g'), replace); } function escapeRegExp(str) { return str.replace(/[.*+?^${}()|[\]\]/g, '\$&'); // $& means the whole matched string }</code>
Dieses Muster wurde mehrmals verfeinert, was letztendlich zur obigen Funktion replaceAll() führte, die String-Argumente im Suchparameter von pre aufnimmt -Verarbeitung, um Sonderzeichen zu maskieren.
Das obige ist der detaillierte Inhalt vonWie ersetze ich alle Vorkommen einer Zeichenfolge in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!