MatchAll globale nelle espressioni regolari JavaScript
Il metodo matchAll restituisce tutte le corrispondenze
come oggetto iterabile,
ogni elemento del quale
contiene un array con la corrispondenza trovata e i suoi gruppi (capturing groups).
Il metodo può essere chiamato solo con il modificatore g.
Vediamo un esempio. Supponiamo di avere la seguente stringa:
let str = '12 34 56';
Troviamo tutte le coppie di numeri e separiamo le loro cifre in gruppi:
let matches = str.matchAll(/(\d)(\d)/g);
Iteriamo l'oggetto iterabile ottenuto con un ciclo e stampiamo le corrispondenze trovate:
for (let match of matches) {
console.log(match); // [12, 1, 2], [34, 3, 4], [56, 5, 6]
}
Data la seguente stringa:
let str = '12:37 15:48 17:59';
Trovate tutte le sottostringhe con l'orario e per ogni corrispondenza scomponete ore e minuti in gruppi separati.
Data la stringa:
let str = 'site.ru sss site.com zzz site.net';
Ottenete un array di nomi di dominio da questa stringa, mettendo in questo array il nome del dominio e la sua estensione in gruppi separati.