JavaScript справка на регулярное выражение
Объект регулярного выражения
Регулярное выражение — это объект, описывающий шаблон символов.
Регулярные выражения используются для выполнения сопоставления шаблонов и функций "поиска и замены" в тексте.
Синтаксис
/pattern/modifiers;
Примере
var patt = /html5css/i
Пример объяснил:
- /html5css/i is a regular expression.
- html5css is a pattern (to be used in a search).
- i is a modifier (modifies the search to be case-insensitive).
Учебник по регулярным выражениям читайте в нашем учебнике по регулярному выражению JavaScript.
Модификаторы
Модификаторы используются для выполнения нечувствительных к регистру и глобальных поисков:
| Изменить | Описание |
|---|---|
| i | Выполнение сопоставления с учетом регистра |
| g | Выполнить глобальное совпадение (найти все совпадения, а не останавливать после первого матча) |
| m | Выполнение многострочного сопоставления |
Скобки
Скобки используются для поиска диапазона символов:
| Выражение | Описание |
|---|---|
| [abc] | Найти любой символ между скобками |
| [^abc] | Найти любой символ не между скобками |
| [0-9] | Найти любой символ между скобками (любая цифра) |
| [^0-9] | Найти любой символ не между скобками (любой не-цифра) |
| (x|y) | Найти любой из вариантов, указанных |
Метасимволы
Метасимволы являются символами с особым значением:
| Метасимвол | Описание |
|---|---|
| . | Найти один символ, за исключением строки или конца строки |
| \w | Поиск символа слова |
| \W | Поиск символа, не являющегося словом |
| \d | Найти цифру |
| \D | Найти символ, не являющийся цифрой |
| \s | Поиск символа пробела |
| \S | Поиск символа, не являющегося символом пробела |
| \b | Найти совпадение в начале/конце слова |
| \B | Найти совпадение не в начале/конце слова |
| \0 | Найти нулевой символ |
| \n | Найти новый символ строки |
| \f | Поиск символа канала формы |
| \r | Поиск символа возврата каретки |
| \t | Поиск символа табуляции |
| \v | Найти вертикальный символ табуляции |
| \xxx | Поиск символа, заданного восьмеричной номером XXX |
| \xdd | Поиск символа, заданного шестнадцатеричным числом DD |
| \uxxxx | Поиск символа Юникода, заданного шестнадцатеричным номером XXXX |
Кванторы
| Количественно | Описание |
|---|---|
| n+ | Соответствует любой строке, содержащей по крайней мере один n |
| n* | Соответствует любой строке, содержащей ноль или более вхождений n |
| n? | Соответствует любой строке, содержащей ноль или одно вхождение n |
| n{X} | Соответствует любой строке, содержащей последовательность X n |
| n{X,Y} | Соответствует любой строке, содержащей последовательность от X до Y n |
| n{X,} | Соответствует любой строке, содержащей последовательность по крайней мере X n |
| n$ | Соответствует любой строке с n в конце его |
| ^n | Соответствует любой строке с n в начале его |
| ?=n | Соответствует любой строке, за которой следует конкретная строка n |
| ?!n | Соответствует любой строке, за которой не следует конкретная строка n |
Свойства объекта регулярного выражения
| Свойство | Описание |
|---|---|
| constructor | Возвращает функцию, создавшую прототип объекта регулярного выражения |
| global | Проверяет, задан ли модификатор "g" |
| ignoreCase | Проверяет, задан ли модификатор "i" |
| lastIndex | Указывает индекс, с которого начинается следующее совпадение |
| multiline | Проверяет, задан ли модификатор "m" |
| source | Возвращает текст шаблона регулярного выражения |
Методы объекта регулярного выражения
| Метод | Описание |
|---|---|
| compile() | Устаревшие в версии 1,5. Компилирует регулярное выражение |
| exec() | Тесты для совпадения в строке. Возвращает первое совпадение |
| test() | Тесты для совпадения в строке. Возвращает значение true или false |
| toString() | Возвращает строковое значение регулярного выражения |

