JavaScript-ersättningsmetoden () returnerar en ny sträng med alla matchningar i ett mönster ersatt av en ersättning.
Syntaksen för replaceAll()
är:
str.replaceAll(pattern, replacement)
Här str
är en sträng.
ersätt Alla () Parameter
Den replaceAll()
metod tar in:
pattern
- antingen en substring eller en regex som ska bytas utreplacement
- denpattern
ersätts med dettareplacement
(kan vara antingen en sträng eller en funktion)
Returvärde från ersättare
- Den
replaceAll()
metoden returnerar en ny sträng, med alla matcher i ett mönster ersättas med en ersättare.
Obs: A RegExp
utan den globala (" g ") flaggan kastar a TypeError
.
Exempel 1: Använd vervangAll ()
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 är fantastiskt. JavaScript är roligt JavaScript är fantastiskt. JavaScript är roligt.
Byt ut utan att överväga versaler / gemener
Den replaceAll()
metod är små bokstäver. För att utföra skiftlägeskänslig ersättning måste du använda en regex med en i
switch (skiftlägeskänslig sökning).
Exempel 2: Skiftlägeskänslighet
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
Exempel 3: Passeringsfunktion som ersättning
Du kan också skicka en funktion (istället för en sträng) som den andra parametern till 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 kan få olika utdata när du kör det här programmet. Det beror på att den första siffran i texten ersätts med en slumpmässig siffra mellan 0 och 9 .
Rekommenderad läsning: JavaScript-sträng ersätter ()