Javascript String match ()

Metoda JavaScript String match () returnează rezultatul potrivirii unui șir cu o expresie regulată.

Sintaxa match()metodei este:

 str.match(regexp)

Aici, str este un șir.

match () Parametri

match()Metoda ia în:

  • regexp - Un obiect de expresie regulată (Argumentul este implicit convertit în RegExpdacă este un non- RegExpobiect)

Notă: dacă nu dați niciun parametru, match()revine ("").

Returnează valoarea din potrivire ()

  • Returnează un Arrayconținut de meciuri, câte un articol pentru fiecare meci.
  • Revine nulldacă nu se găsește nicio potrivire.

Exemplul 1: Utilizarea meciului ()

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

Ieșire

 Rezultatul potrivirii / Java /: („Java”, index: 14, intrare: „Învăț JavaScript nu Java.”, Grupuri: nedefinit) Rezultatul potrivirii / Java / cu pavilion g: („Java”, „Java” )

Aici putem vedea că, fără a folosi gsteagul, obținem doar prima potrivire ca rezultat, dar cu informații detaliate, cum ar fi indexul, intrarea și grupurile.

Notă : Dacă expresia regulată nu include gsteagul, str.match()va reveni doar prima potrivire similară cu RegExp.exec(). Articolul returnat va avea, de asemenea, următoarele proprietăți suplimentare:

  • groups - Un obiect al grupurilor de capturare numite cu chei ca nume și valori ca potriviri capturate.
  • index - Indexul căutării unde a fost găsit rezultatul.
  • input - O copie a șirului de căutare.

Exemplul 2: potrivirea secțiunilor în șir

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

Ieșire

 („numele este Albert.”, „NAME este Soyuj.”) (nume: „Albert”)

Aici, am folosit o expresie regulată pentru a se potrivi cu o anumită porțiune a șirului. De asemenea, putem captura anumite grupuri din meci folosind sintaxa așa cum se arată mai sus.

Lectură recomandată: JavaScript String matchAll ()

Articole interesante...