Match global en expresiones regulares de JavaScript

El método match, llamado con el modificador g, retorna todas las coincidencias encontradas en forma de array. Veamos con ejemplos.

Ejemplo

Obtengamos un array de subcadenas que consisten en la letra 'a':

javascriptlet str = 'a aa aaa aaaa';
let res = str.match(/a+/g);

Como resultado, se almacenará lo siguiente en la variable:

javascript['a', 'aa', 'aaa', 'aaaa']

Ejemplo

Obtengamos un array de números:

javascriptlet str = '1 23 456 789';
let res = str.match(/\d+/g);

Como resultado, se almacenará lo siguiente en la variable:

javascript['1', '23', '456', '789']

Ejemplo

Obtengamos un array de todos los dígitos:

javascriptlet str = '1 23 456 789';
let res = str.match(/\d/g);

Como resultado, se almacenará lo siguiente en la variable:

javascript['1', '2', '3', '4', '5', '6', '7', '8', '9']

Problemas prácticos

Задание 1

Dada la cadena:

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

Obtenga un array de los nombres de dominio de esta cadena.

Задание 2

Dada la cadena:

javascriptlet str = 'a1b c34d x567z';

Encuentre la suma de todos los números de esta cadena.