Metoda JavaScript replaceAll () vrací nový řetězec se všemi shodami vzoru nahrazeného nahrazením.
Syntaxe replaceAll()
je:
str.replaceAll(pattern, replacement)
Tady str
je řetězec.
Parametr replaceAll ()
replaceAll()
Metoda bere v:
pattern
- buď podřetězec, nebo regex, který má být nahrazenreplacement
-pattern
je nahrazeno tímtoreplacement
(může to být řetězec nebo funkce)
Návratová hodnota z replaceAll ()
replaceAll()
Metoda vrací nový řetězec, se všemi zápasy vzoru nahrazen náhradou.
Poznámka: A RegExp
bez globálního příznaku („ g “) vrhá a TypeError
.
Příklad 1: Použití 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);
Výstup
JavaScript je úžasný. JavaScript je zábava JavaScript je úžasný. JavaScript je zábavný.
Vyměňte bez zohlednění velkých / malých písmen
replaceAll()
Metoda je malá a velká písmena. Chcete-li provést výměnu bez rozlišení velkých a malých písmen, musíte použít regex s i
přepínačem (vyhledávání bez rozlišení velkých a malých písmen).
Příklad 2: Výměna malých a velkých písmen
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
Výstup
JS JS
Příklad 3: Předání funkce jako náhrada
Můžete také předat funkci (místo řetězce) jako druhý parametr replaceAll()
metodě.
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);
Výstup
4,3518
Při spuštění tohoto programu můžete získat jiný výstup. Je to proto, že první číslice v textu je nahrazena náhodnou číslicí mezi 0 a 9 .
Doporučené čtení: JavaScript String replace ()