Globální matchAll v regulárních výrazech JavaScriptu

Metoda matchAll vrací všechny shody jako iterovatelný objekt, jehož každý prvek obsahuje pole z nalezeného a jeho zachycených skupin. Metoda může být volána pouze s modifikátorem g.

Podívejme se na příklad. Předpokládejme, že máme následující řetězec:

javascriptlet str = '12 34 56';

Najděme všechny dvojice čísel a rozdělme jejich číslice do zachycených skupin:

javascriptlet matches = str.matchAll(/(\d)(\d)/g);

Projděme získaný iterovatelný objekt cyklem a vypišme nalezené shody:

javascriptfor (let match of matches) {
  console.log(match); // [12, 1, 2], [34, 3, 4], [56, 5, 6] 
}
Задание 1

Je dán následující řetězec:

javascriptlet str = '12:37 15:48 17:59';

Najděte v něm všechny podřetězce s časem a pro každý nalezený rozložte hodiny a minuty do zachycených skupin.

Задание 2

Je dán řetězec:

javascriptlet str = 'site.ru sss site.com zzz site.net';

Získejte pole doménových jmen z tohoto řetězce, přičemž v tomto poli umístěte název domény a její zónu do různých zachycených skupin.