8c1dea14

Выполнение Глобального Поиска, Игнорирование Регистра и Рассмотрение Многострочного Ввода


Регулярные выражения могут иметь три опции-флага, дающие возможность выполнять глобальный и нечувствительный к регистру поиск. Для глобального поиска используйте флаг g. Для поиска без учёта регистра используйте флаг i. Для многострочного поиска - флаг m. Эти флаги могут использоваться независимо или вместе в любом порядке и являются частью регулярного выражения.


Для включения флага используется следующий синтаксис:

re = /pattern/flags

re = new RegExp("pattern", ["flags"])


Обратите внимание, что флаги интегрированы в регулярное выражение. Они не могут быть позднее добавлены или удалены.

Например, re = /\w+\s/g создаёт регулярное выражение, которое ищет один или более символов с последующим пробелом по всей строке.

<SCRIPT LANGUAGE="JavaScript1.2">

re = /\w+\s/g;

str = "fee fi fo fum";

myArray = str.match(re);

document.write(myArray);

</SCRIPT>

Отобразится ["fee ", "fi ", "fo "]. В этом примере Вы можете заменить строку:

re = /\w+\s/g;

на строку:

re = new RegExp("\\w+\\s", "g");

и получить аналогичный результат.

Флаг m используется flag для специфицирования того, что многострочный ввод должен рассматриваться как несколько строк. Если используется флаг m, то ^ и $ совпадают в начале и в конце любой строки общей строки ввода, вместо начала и конца всей строки ввода.





Содержание раздела