Metoden JavaScript erstatteAll () returnerer en ny streng med alle matches i et mønster erstattet af en erstatning.
Syntaksen for replaceAll()
er:
str.replaceAll(pattern, replacement)
Her str
er en streng.
parameteren erstatteAll ()
Den replaceAll()
metode tager i:
pattern
- enten en substring eller en regex, der skal udskiftesreplacement
- denpattern
erstattes med dettereplacement
(kan enten være en streng eller en funktion)
Returneringsværdi fra erstatteAll ()
- Den
replaceAll()
metode returnerer en ny streng, med alle kampe i et mønster erstattet af en erstatning.
Bemærk: A RegExp
uden det globale (" g ") flag kaster et TypeError
.
Eksempel 1: Brug af erstatteAll ()
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);
Produktion
JavaScript er fantastisk. JavaScript er sjovt JavaScript er fantastisk. JavaScript er sjovt.
Udskift uden at overveje store og små bogstaver
Den replaceAll()
fremgangsmåde er små bogstaver. For at udføre den sag-ufølsomme udskiftning skal du bruge en regex med en i
switch (store og små bogstaver).
Eksempel 2: Skift mellem store og små bogstaver
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
Produktion
JS JS
Eksempel 3: Passeringsfunktion som erstatning
Du kan også videregive en funktion (i stedet for en streng) som den anden parameter til replaceAll()
metoden.
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);
Produktion
4.3518
Du får muligvis forskellige output, når du kører dette program. Det skyldes, at det første ciffer i teksten erstattes med et tilfældigt ciffer mellem 0 og 9 .
Anbefalet læsning: Erstat JavaScript-streng ()