Javascript karakterlánc matchAll ()

A JavaScript String matchAll () metódus visszaadja a karakterlánc és a reguláris kifejezés összehangolásának eredményeit.

A matchAll()módszer szintaxisa :

 str.matchAll(regexp)

Itt strvan egy húr.

matchAll () Paraméterek

A matchAll()módszer:

  • regexp - reguláris kifejezés objektum (az argumentum implicit módon konvertálódik, RegExpha nem RegExpobjektumról van szó)

Megjegyzés: Ha az RegExpobjektumnak nincs meg a /gzászlaja, akkor egy TypeErrordobni fog.

Visszatérési érték a matchAll () értékéből

  • Visszaad egy iterátort, amely tartalmazza az egyezéseket, beleértve a rögzítő csoportokat is.

Megjegyzés : A visszaadott iterátor minden elemének a következő további tulajdonságai lesznek:

  • groups - Megnevezett elfogási csoportok objektuma, amelynek kulcsai a nevek és az értékek, mivel a rögzített egyeznek.
  • index - A keresés indexe, ahol az eredmény megtalálható.
  • input - A keresési karakterlánc másolata.

1. példa: A matchAll () használata

 const string = "I am learning JavaScript not Java."; const re = /Java(a-z)*/gi; let result = string.matchAll(re); for (match of result) ( console.log(match); )

Kimenet

 ('JavaScript', index: 14, input: 'JavaScript-et nem Java-t tanulok.', Csoportok: undefined) ('Java', index: 29, input: 'JavaScript-et nem Java-t tanulok.', Csoportok: undefined)

Itt a visszatérő iterátort a for… ofciklus segítségével iterálják.

2. példa: A matchAll használata csoportok rögzítéséhez

 const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) // using named capturing groups const re = /namesiss(?(a-zA-Z)+)./gi; let found = string.matchAll(re); for (const match of found)( console.log(`Found "$(match(0))" at index $(match.index). Captured name = $(match.groups('name'))`) )

Kimenet

Talált "név Albert". a 3. indexen. Fogott név = Albert Megtalálva "A név Szojuj." a 24. indexen. Fogott név = Szojuj

Itt egy szabályos kifejezést használtunk a karakterlánc egy bizonyos részének illesztésére. A meccs bizonyos csoportjait matchAll()jobban megragadhatjuk, mint match().

Ajánlott olvasmány: JavaScript karakterlánc egyezés ()

érdekes cikkek...