Globalny matchAll w wyrażeniach regularnych JavaScript
Metoda matchAll zwraca wszystkie dopasowania
w postaci obiektu iterowalnego,
każdy element którego
zawiera tablicę ze znalezionego i jego grup przechwytujących.
Metoda może być wywoływana tylko z modyfikatorem g.
Spójrzmy na przykładzie. Załóżmy, że mamy następujący ciąg znaków:
let str = '12 34 56';
Znajdźmy wszystkie pary liczb i rozbijmy ich cyfry na grupy przechwytujące:
let matches = str.matchAll(/(\d)(\d)/g);
Przejdźmy po otrzymanym obiekcie iterowalnym pętlą i wypiszmy znalezione dopasowania:
for (let match of matches) {
console.log(match); // [12, 1, 2], [34, 3, 4], [56, 5, 6]
}
Dany jest następujący ciąg znaków:
let str = '12:37 15:48 17:59';
Znajdź w nim wszystkie podciągi z czasem i dla każdego znalezionego rozłóż godziny i minuty na grupy przechwytujące.
Dany jest ciąg znaków:
let str = 'site.ru sss site.com zzz site.net';
Uzyskaj tablicę nazw domen z tego ciągu, umieszczając w tej tablicy nazwę domeny i jej strefę w różnych grupach przechwytujących.