O método match () da String JavaScript retorna o resultado da correspondência de uma string com uma expressão regular.
A sintaxe do match()método é:
str.match(regexp)
Aqui, str é uma string.
Parâmetros match ()
O match()método inclui:
- regexp - Um objeto de expressão regular (o argumento é implicitamente convertido em
RegExpse for um nãoRegExpobjeto)
Nota: Se você não fornecer nenhum parâmetro, match()retorna ("").
Valor de retorno de match ()
- Retorna um
Arraycontendo as correspondências, um item para cada correspondência. - Retorna
nullse nenhuma correspondência for encontrada.
Exemplo 1: usando match ()
const string = "I am learning JavaScript not Java."; const re = /Java/; let result = string.match(re); console.log("Result of matching /Java/ :"); console.log(result); const re1 = /Java/g; let result1 = string.match(re1); console.log("Result of matching /Java/ with g flag:") console.log(result1);
Resultado
Resultado da correspondência de / Java /: ('Java', índice: 14, entrada: 'Estou aprendendo JavaScript, não Java.', Grupos: indefinido) Resultado da correspondência de / Java / com sinalizador g: ('Java', 'Java' )
Aqui, podemos ver que sem usar o gsinalizador, obtemos apenas a primeira correspondência como resultado, mas com informações detalhadas como índice, entrada e grupos.
Observação : se a expressão regular não incluir o gsinalizador, str.match()retornará apenas a primeira correspondência semelhante a RegExp.exec(). O item devolvido também terá as seguintes propriedades adicionais:
groups- Um objeto de grupos de captura nomeados tendo chaves como nomes e valores como correspondências capturadas.index- O índice de pesquisa onde o resultado foi encontrado.input- Uma cópia da string de pesquisa.
Exemplo 2: Correspondência de seções em string
const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) const re = /namesiss(a-zA-Z)+./gi; let result = string.match(re); console.log(result); // ( 'name is Albert.', 'NAME is Soyuj.' ) // using named capturing groups const re1 = /namesiss(?(a-zA-Z)+)./i; let found = string.match(re1); console.log(found.groups); // (name: "Albert")
Resultado
('nome é Albert.', 'NOME é Soyuj.') (nome: "Albert")
Aqui, usamos uma expressão regular para corresponder a uma determinada parte da string. Também podemos capturar certos grupos na correspondência usando a sintaxe conforme mostrado acima.
Leitura recomendada: string JavaScript matchAll ()








