Книга: Выразительный JavaScript

Итог

Итог

Регулярки – это объекты, представляющие шаблоны поиска в строках. Они используют свой синтаксис для выражения этих шаблонов.

/abc/ Последовательность символов

/[abc]/ Любой символ из списка

/[^abc]/ Любой символ, кроме символов из списка

/[0-9]/ Любой символ из промежутка

/x+/ Одно или более вхождений шаблона x
/x+?/
Одно или более вхождений, нежадное

/x*/ Ноль или более вхождений

/x?/ Ноль или одно вхождение

/x{2,4}/ От двух до четырёх вхождений

/(abc)/ Группа

/a|b|c/ Любой из нескольких шаблонов

/d/ Любая цифра

/w/ Любой алфавитно-цифровой символ («буква»)

/s/ Любой пробельный символ

/./ Любой символ, кроме переводов строки

/b/ Граница слова

/^/ Начало строки

/$/ Конец строки

У регулярки есть метод test, для проверки того, есть ли шаблон в строке. Есть метод exec, возвращающий массив, содержащий все найденные группы. У массива есть свойство index, показывающее, где начался поиск.

У строк есть метод match для поиска шаблонов, и метод search, возвращающий только начальную позицию вхождения. Метод replace может заменять вхождения шаблона на другую строку. Кроме этого, вы можете передать в replace функцию, которая будет строить строчку на замену, основываясь на шаблоне и найденных группах.

У регулярок есть настройки, которые пишут после закрывающего слэша. Опция i делает регулярку регистронезависимой, а опция g делает её глобальной, что, кроме прочего, заставляет метод replace заменять все найденные вхождения, а не только первое.

Конструктор RegExp можно использовать для создания регулярок из строк.

Регулярки – острый инструмент с неудобной ручкой. Они сильно упрощают одни задачи, и могут стать неуправляемыми при решении других, сложных задач. Часть умения пользоваться регулярками состоит в том, чтобы уметь сопротивляться искушению запихнуть в них задачу, для которой они не предназначены.

Оглавление книги


Генерация: 0.042. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз