Методы, использующие регулярные выражения
Таблица 4.2 Методы, использующие регулярные выражения
exec | Метод объекта RegExp, выполняющий поиск совпадения в строке. Возвращает массив информации. | |
test | Метод объекта RegExp, тестирующий на наличие совпадений в строке. Возвращает true или false. | |
match | Метод объекта String, выполняющий поиск совпадения в строке. Возвращает массив информации, или null при отсутствии совпадения. | |
search | Метод объекта String, тестирующий на наличие совпадений в строке. Возвращает индекс совпадения или -1, если поиск завершился неудачно. | |
replace | Метод объекта String, выполняющий поиск совпадения в строке и заменяющий найденные подстроки замещающей подстрокой. | |
split | Метод объекта String, использующий регулярное выражение или фиксированную строку для разделения строки на массив подстрок. |
Если Вам необходимо выяснить, найден ли патэрн в строке, используйте методы test или search; для получения большего количества информации (и более медленного выполнения) используйте методы exec или match.
Если Вы используете exec или match и если совпадение найдено, эти методы возвращают массив и обновляют свойства ассоциированного объекта регулярного выражения и предопределённого объекта регулярного выражения, RegExp. Если совпадения нет, метод exec возвращает значение null (которое конвертируется в false).
В следующем примере скрипт использует метод exec для поиска совпадения в строке:
<SCRIPT LANGUAGE="JavaScript1.2">
myRe=/d(b+)d/g;
myArray = myRe.exec("cdbbdbsbz");
</SCRIPT>
Если Вам не нужен доступ к свойствам регулярного выражения, можно создать myArray таким скриптом:
<SCRIPT LANGUAGE="JavaScript1.2">
myArray = /d(b+)d/g.exec("cdbbdbsbz");
</SCRIPT>
Если Вы хотите иметь возможность рекомпиляции регулярного выражения, то вот ещё один скрипт:
<SCRIPT LANGUAGE="JavaScript1.2">
myRe= new RegExp ("d(b+)d", "g:);
myArray = myRe.exec("cdbbdbsbz");
</SCRIPT>
При выполнении скриптов производится поиск совпадения, возвращается массив и обновляются свойства, показанные в таблице.