JavaScript. Подробное руководство, 6-е издание, стр. 446

Пример

Для нахождения всех соответствий в строке метод

<b>ехес()</b>
можно вызывать в цикле:

<b>var pattern = /\bJava\w*\b/g;</b>

<b>var text = &quot;JavaScript is more fun than Java or JavaBeans!&quot;;</b>

<b>var result;</b>

<b>while((result = pattern.exec(text)) != null) {</b>

<b>  alert(&quot;Matched ‘&quot; + result[0] +</b>

<b>    at position &quot; + result.index +</b>

<b>    next search begins at position &quot; + pattern.lastlndex);</b>

<b>}</b>

См. также

RegExp.lastlndex, RegExp.test(), String.match(), String.replace(), String.search(); глава 10

RegExp.global

выполняется ли глобальный поиск по данному регулярному выражению

Синтаксис

<b>regexp.global </b>

Описание

global - это логическое свойство объектов

<b>RegExp</b>
доступное только для чтения. Оно указывает, выполняет ли данное регулярное выражение глобальный поиск, т.е. было-ли оно создано с атрибутом «g».

RegExp.ignoreCase

чувствительно ли регулярное выражение к регистру

Синтаксис

<b>regexp.ignoreCase</b>

Описание

<b>ignoreCase</b>
- это логическое свойство объектов
<b>RegExp</b>
, доступное только для чтения. Оно указывает, выполняет ли данное регулярное выражение поиск без учета регистра, т. е. было ли оно создано с атрибутом «і».

RegExp.lastlndex

начальная позиция следующего поиска

Синтаксис

<b>regexp.lastlndex</b>

Описание

<b>lastlndex</b>
- это доступное для чтения и записи свойство объектов
<b>RegExp</b>
. Для регулярных выражений с установленным атрибутом «g» оно содержит целое, указывающее позицию в строке символа, который следует непосредственно за последним соответствием, найденным с помощью методов
<b>RegExp.ехес()</b>
и
<b>RegExp.test().</b>
Эти методы используют данное свойство в качестве начальной точки при следующем поиске. Благодаря этому данные методы можно вызывать повторно для выполнения цикла по всем соответствиям в строке. Обратите внимание:
<b>lastlndex</b>
не используется объектами
<b>RegExp</b>
, не имеющими атрибута «g» и не представляющими собой глобальные шаблоны.

Это свойство доступно для чтения и для записи, поэтому можно установить его в любой момент, чтобы указать, где в целевой строке должен быть начат следующий поиск. Методы

<b>ехес()</b>
и
<b>test()</b>
автоматически сбрасывают свойство
<b>lastlndex</b>
в 0, когда не могут найти какого-либо (или следующего) соответствия. Начиная поиск в новой строке после успешного поиска в предыдущей, необходимо явно установить это свойство равным 0.

См. также

RegExp.ехес(), RegExp.test()

RegExp.source

текст регулярного выражения

Синтаксис

<b>regexp.source</b>

Описание

<b>source</b>
- доступное только для чтения строковое свойство объектов
<b>RegExp</b>
, содержащее текст шаблона
<b>RegExp</b>
. Текст не включает ограничивающие символы слэша, используемые в литералах регулярных выражений, а также не включает атрибуты «g», «і» и «m».

RegExp.test()

проверяет, соответствует ли строка шаблону

Синтаксис

<b>regexp.test(строка)</b>

Аргументы

строка Проверяемая строка.

Возвращаемое значение

Возвращает true, если строка содержит текст, соответствующий

<b>regexp</b>
, и false - в противном случае.

Исключения

<b>ТуреЕrror</b>
Генерируется, если метод вызывается для объекта, не являющегося

объектом

<b>RegExp</b>
.

Описание

Метод

<b>test()</b>
проверяет строку, чтобы увидеть, содержит ли она текст, который соответствует
<b>regexp</b>
. Если да, он возвращает true, в противном случае - false. Вызов метода
<b>test()</b>
для регулярного выражения и передача ему строки s эквивалентны следующему выражению:

<b>(r.exec(s) != null)</b>

Пример

<b>var pattern = /java/і;</b>

<b>pattern.test(&quot;JavaScript&quot;); // Вернет true</b>

<b>pattern.test(&quot;ECMAScript&quot;); // Вернет false</b>

См. также

RegExp.exec(), RegExp.lastlndex, String.match(), String.replace(), String.substring(); глава 10

RegExp.toString()

преобразует регулярное выражение в строку (переопределяет Object.toString())

Синтаксис

<b>regexp.toString()</b>

Возвращаемое значение

Строковое представление regexp.

Исключения

<b>ТуреЕrror</b>
Генерируется, если метод вызывается для объекта, который не явля

ется объектом

<b>RegExp</b>
.