JavaScript String replaceAll ()

De JavaScript replaceAll () -methode retourneert een nieuwe tekenreeks waarbij alle overeenkomsten van een patroon zijn vervangen door een vervanging.

De syntaxis van replaceAll()is:

 str.replaceAll(pattern, replacement)

Hier stris een string.

replaceAll () Parameter

De replaceAll()methode omvat:

  • pattern - ofwel een substring of een regex die moet worden vervangen
  • replacement- de patternwordt hierdoor vervangen replacement(kan een string of een functie zijn)

Retourwaarde van replaceAll ()

  • De replaceAll()methode retourneert een nieuwe string, waarbij alle overeenkomsten van een patroon worden vervangen door een vervanging.

Opmerking: A RegExpzonder de globale (" g ") vlag zal een TypeError.

Voorbeeld 1: replaceAll () gebruiken

 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);

Uitvoer

JavaScript is geweldig. JavaScript is leuk JavaScript is geweldig. JavaScript is leuk.

Vervangen zonder rekening te houden met hoofdletters / kleine letters

De replaceAll()methode is hoofdlettergevoelig. Om de hoofdletterongevoelige vervanging uit te voeren, moet u een regex met een ischakelaar gebruiken (hoofdletterongevoelig zoeken).

Voorbeeld 2: hoofdletterongevoelige vervanging

 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

Uitvoer

 JS JS

Voorbeeld 3: functie doorgeven als vervanging

U kunt ook een functie (in plaats van een string) als tweede parameter aan de replaceAll()methode doorgeven .

 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);

Uitvoer

 4.3518

Mogelijk krijgt u een andere uitvoer wanneer u dit programma uitvoert. Dit komt doordat het eerste cijfer in de tekst wordt vervangen door een willekeurig cijfer tussen 0 en 9 .

Aanbevolen literatuur: JavaScript-tekenreeks vervangen ()

Interessante artikelen...