Javascript streng match ()

Metoden JavaScript String match () returnerer resultatet af at matche en streng mod et regulært udtryk.

Metodens syntaks match()er:

 str.match(regexp)

Her er str en streng.

match () Parametre

Den match()metode tager i:

  • regexp - Et objekt med et regulært udtryk (Argumentet konverteres implicit til, RegExphvis det er et ikke- RegExpobjekt)

Bemærk: Hvis du ikke angiver nogen parametre, match()vender tilbage ("").

Returneringsværdi fra match ()

  • Returnerer en, der Arrayindeholder kampene, et element for hver kamp.
  • Returnerer, nullhvis der ikke findes noget match.

Eksempel 1: Brug af match ()

 const string = "I am learning JavaScript not Java."; const re = /Java/; let result = string.match(re); console.log("Result of matching /Java/ :"); console.log(result); const re1 = /Java/g; let result1 = string.match(re1); console.log("Result of matching /Java/ with g flag:") console.log(result1);

Produktion

 Resultat af matching / Java /: ('Java', indeks: 14, input: 'Jeg lærer JavaScript ikke Java.', Grupper: udefineret) Resultat af matching / Java / med g-flag: ('Java', 'Java' )

Her kan vi se, at uden at bruge gflag, får vi kun den første kamp som resultat, men med detaljerede oplysninger som indeks, input og grupper.

Bemærk : Hvis det regulære udtryk ikke inkluderer gflag, str.match()returneres kun den første kamp svarende til RegExp.exec(). Den returnerede vare har også følgende yderligere egenskaber:

  • groups - Et objekt med navngivne fangstgrupper, der har nøgler som navne og værdier, som de fangede matcher.
  • index - Indekset over søgning, hvor resultatet blev fundet.
  • input - En kopi af søgestrengen.

Eksempel 2: Matchende sektioner i streng

 const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) const re = /namesiss(a-zA-Z)+./gi; let result = string.match(re); console.log(result); // ( 'name is Albert.', 'NAME is Soyuj.' ) // using named capturing groups const re1 = /namesiss(?(a-zA-Z)+)./i; let found = string.match(re1); console.log(found.groups); // (name: "Albert")

Produktion

 ('navn er Albert.', 'NAVN er Soyuj.') (navn: "Albert")

Her har vi brugt et regulært udtryk til at matche en bestemt del af strengen. Vi kan også fange bestemte grupper i kampen ved hjælp af syntaksen som vist ovenfor.

Anbefalet læsning: JavaScript String matchAll ()

Interessante artikler...