Разница между методами test и exec для поиска совпадений в регулярных выражениях заключается в том, что они выполняют разные задачи:
- Метод test проверяет, присутствует ли определённый шаблон в строке. 2 Если строка соответствует шаблону, то этот метод возвращает true, иначе возвращается false. 2
- Метод exec ищет вхождения определённого шаблона в строку и возвращает эти вхождения в виде массива. 2 Массив содержит в себе информацию об используемом шаблоне, позиции, на которой было найдено совпадение, проверяемом тексте и наборах. 4 Если совпадений нет, метод exec возвращает null. 4
Таким образом, метод test проверяет, есть ли в строке текст, который соответствует регулярному выражению, а метод exec ищет вхождения этого текста и возвращает их в виде массива. 2