Match global em expressões regulares JavaScript
O método match, chamado com o modificador
g, retorna todas as correspondências encontradas
na forma de um array. Vamos ver
com exemplos.
Exemplo
Vamos obter um array de substrings consistindo
da letra 'a':
let str = 'a aa aaa aaaa';
let res = str.match(/a+/g);
Como resultado, o seguinte será armazenado na variável:
['a', 'aa', 'aaa', 'aaaa']
Exemplo
Vamos obter um array de números:
let str = '1 23 456 789';
let res = str.match(/\d+/g);
Como resultado, o seguinte será armazenado na variável:
['1', '23', '456', '789']
Exemplo
Vamos obter um array de todos os dígitos:
let str = '1 23 456 789';
let res = str.match(/\d/g);
Como resultado, o seguinte será armazenado na variável:
['1', '2', '3', '4', '5', '6', '7', '8', '9']
Problemas práticos
Dada a string:
let str = 'site.ru sss site.com zzz site.net';
Obtenha um array de nomes de domínio desta string.
Dada a string:
let str = 'a1b c34d x567z';
Encontre a soma de todos os números desta string.