Javascript String matchAll ()

JavaScript String matchAll () yöntemi, bir dizeyi normal ifadeyle eşleştiren sonuçların yineleyicisini döndürür.

matchAll()Yöntemin sözdizimi şöyledir:

 str.matchAll(regexp)

İşte strbir dizedir.

matchAll () Parametreleri

matchAll()Yöntem alır:

  • regexp - Normal bir ifade nesnesi (Bağımsız değişken, nesne RegExpdeğilse dolaylı olarak dönüştürülür RegExp)

Not: Eğer RegExpnesne yoktur /gbayrak, bir TypeErroratılacaktır.

MatchAll'den dönüş değeri ()

  • Yakalama grupları dahil eşleşmeleri içeren bir yineleyici döndürür.

Not : Döndürülen yineleyicinin her bir öğesi aşağıdaki ek özelliklere sahip olacaktır:

  • groups - Yakalanan eşleşmeler olarak adlar ve değerler olarak anahtarlara sahip, adlandırılmış yakalama gruplarının bir nesnesi.
  • index - Sonucun bulunduğu arama dizini.
  • input - Arama dizesinin bir kopyası.

Örnek 1: matchAll () kullanma

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

Çıktı

 ('JavaScript', dizin: 14, girdi: 'Java değil JavaScript öğreniyorum.', Gruplar: tanımsız) ('Java', dizin: 29, girdi: 'Java değil JavaScript öğreniyorum.', Gruplar: tanımsız)

Burada, döndürülen yineleyici for… ofdöngü kullanılarak yinelenir .

Örnek 2: Grupları yakalamak için matchAll kullanma

 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'))`) )

Çıktı

Bulunan "isim Albert." dizinde 3. Yakalanan isim = Albert Bulundu "NAME is Soyuj." dizinde 24. Yakalanan isim = Soyuj

Burada, dizenin belirli bir bölümünü eşleştirmek için normal bir ifade kullandık. Daha matchAll()iyi kullanarak maçtaki belirli grupları yakalayabiliriz match().

Önerilen Okuma: JavaScript String match ()

Ilginç makaleler...