El método JavaScript String matchAll () devuelve un iterador de resultados de hacer coincidir una cadena con una expresión regular.
La sintaxis del matchAll()método es:
 str.matchAll(regexp)
Aquí strhay una cuerda.
Parámetros matchAll ()
El matchAll()método incluye:
- regexp: un objeto de expresión regular (el argumento se convierte implícitamente en RegExpsi no es unRegExpobjeto)
Nota: Si el RegExpobjeto no tiene la /gbandera, se TypeErrorlanzará un .
Valor de retorno de matchAll ()
- Devuelve un iterador que contiene las coincidencias, incluidos los grupos de captura.
Nota : Cada elemento del iterador devuelto tendrá las siguientes propiedades adicionales:
- groups- Un objeto de grupos de captura con nombre que tienen claves como nombres y valores como coincidencias capturadas.
- index- El índice de búsqueda donde se encontró el resultado.
- input- Una copia de la cadena de búsqueda.
Ejemplo 1: uso de matchAll ()
 const string = "I am learning JavaScript not Java."; const re = /Java(a-z)*/gi; let result = string.matchAll(re); for (match of result) ( console.log(match); )
Salida
 ('JavaScript', índice: 14, entrada: 'Estoy aprendiendo JavaScript, no Java.', Grupos: indefinido) ('Java', índice: 29, entrada: 'Estoy aprendiendo JavaScript no Java.', Grupos: indefinido)
Aquí, el iterador devuelto se repite utilizando el for… ofbucle.
Ejemplo 2: uso de matchAll para capturar grupos
 const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) // using named capturing groups const re = /namesiss(?(a-zA-Z)+)./gi; let found = string.matchAll(re); for (const match of found)( console.log(`Found "$(match(0))" at index $(match.index). Captured name = $(match.groups('name'))`) )
Salida
Encontrado "nombre es Albert". en el índice 3. Captured name = Albert Found "NAME is Soyuj". en el índice 24. Nombre capturado = Soyuj
Aquí, hemos usado una expresión regular para hacer coincidir una cierta porción de la cadena. Podemos capturar ciertos grupos en el partido usando matchAll()mejor que match().
Lectura recomendada: coincidencia de cadenas de JavaScript ()








