Методът JavaScript String matchAll () връща итератор на резултатите от съвпадение на низ спрямо регулярен израз.
Синтаксисът на matchAll()метода е:
 str.matchAll(regexp)
Тук strе низ.
Параметри matchAll ()
В matchAll()метода се в:
- regexp - Регулярно изразен обект (Аргументът се преобразува имплицитно, RegExpако не еRegExpобект)
Забележка: Ако RegExpобектът няма /gфлага, TypeErrorще бъде хвърлен a .
Върната стойност от matchAll ()
- Връща итератор, съдържащ съвпаденията, включително групите за улавяне.
Забележка : Всеки елемент на върнатия итератор ще има следните допълнителни свойства:
- groups- Обект от поименни групи за улавяне, които имат ключове като имена и стойности като заснети съвпадения.
- index- Индексът на търсене, където е намерен резултатът.
- input- Копие на низа за търсене.
Пример 1: Използване на 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); )
Изход
 ('JavaScript', индекс: 14, вход: 'Уча JavaScript не Java.', Групи: undefined) ('Java', индекс: 29, вход: 'Уча JavaScript не Java.', Групи: undefined)
Тук върнатият итератор се повтаря с помощта на for… ofцикъла.
Пример 2: Използване на matchAll за улавяне на групи
 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'))`) )
Изход
Намерено „името е Алберт“. при индекс 3. Заловено име = Алберт Намерен „ИМЕТО е Союдж“. при индекс 24. Заловено име = Soyuj
Тук използвахме регулярен израз, за да съответства на определена част от низа. Можем да уловим определени групи в мача, използвайки matchAll()по-добре от match().
Препоръчително четене: Съвпадение на низовете на JavaScript ()








