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

❮ Предыдущий Далее ❯

Синтаксис

/ шаблон / модификатор(ы) ;

Пример

let pattern = /w3schools/i;

Попробуйте самостоятельно »

Пример объяснено:

1111 /w3-w3schools aSemploools. выражение
W3Schools Для поиска
/W3Schools / Rightepression

Учебное пособие по регулярным выражениям см. в нашем учебном пособии по регулярным выражениям JavaScript.


Поддержка браузера

/ регулярное выражение / — это функция ECMAScript1 (ES1).

ES1 (JavaScript 1997) полностью поддерживается во всех браузерах:

Хром Край Фаерфокс Сафари Опера ИЭ
Да Да Да Да Да Да

Модификаторы

Модификаторы используются для выполнения глобального поиска без учета регистра:

Модификатор Описание
г Выполнить глобальное сопоставление (найти все совпадения, а не останавливаться после первого совпадения) 90-9]
Найти любой символ НЕ в скобках (любой нецифровой)
(х|у) Найти любую из указанных альтернатив


Метасимволы

Метасимволы — это символы со специальным значением:

Метасимвол Описание
. Найти один символ, кроме новой строки или символа конца строки
Найти символ слова
\Вт Найти символ, не являющийся словом
Найти цифру
\D Найти нецифровой символ
Найти символ пробела
Найти непробельный символ
Найти совпадение в начале/конце слова, начинающегося так: \bHI, заканчиваться так: HI\b
Найти совпадение, но не в начале/конце слова
\0 Найти символ NULL
Найти новый символ строки
Найти символ перевода страницы
\r Найти символ возврата каретки
Найти символ табуляции
\v Найти символ вертикальной табуляции
\xxx Найти символ, заданный восьмеричным числом xxx
\хдд Найдите символ, заданный шестнадцатеричным числом дд
= удддд Найдите символ Unicode, заданный шестнадцатеричным числом dddd

Квантификаторы

Квантификаторы Описание
n+ Соответствует любой строке, содержащей хотя бы один n
нет* Соответствует любой строке, содержащей ноль или более вхождений n
нет? Соответствует любой строке, которая содержит ноль или одно вхождение n
п{Х} Соответствует любой строке, содержащей последовательность X n 9п Соответствует любой строке с n в начале
?=n Соответствует любой строке, за которой следует определенная строка n
?!n Соответствует любой строке, за которой не следует определенная строка n

Свойства объекта RegExp

Свойство Описание
конструктор Возвращает функцию, которая создала прототип объекта RegExp
глобальный Проверяет, установлен ли модификатор «g»
ignoreCase Проверяет, установлен ли модификатор «i»
последний индекс Указывает индекс, с которого начинается следующее совпадение.
многострочный Проверяет, установлен ли модификатор «m»
источник Возвращает текст шаблона RegExp

Методы объекта RegExp

Метод Описание
компиляция()
Устарело в версии 1.5. Компилирует регулярное выражение
exec() Проверяет совпадение в строке. Возвращает первое совпадение
тест() Проверяет совпадение в строке. Возвращает истину или ложь
toString() Возвращает строковое значение регулярного выражения

❮ Предыдущий Следующий ❯


ВЫБОР ЦВЕТА



Лучшие учебники
Учебное пособие по HTML
Учебное пособие по CSS
Учебное пособие по JavaScript
Учебное пособие
Учебное пособие по SQL
Учебное пособие по Python
Учебное пособие по W3.
CSS
Учебное пособие по Bootstrap
Учебное пособие по PHP
Учебное пособие по Java
Учебное пособие по C++
Учебное пособие по jQuery

Лучшие ссылки
HTML Reference
CSS Reference
JavaScript Reference
SQL Reference
Python Reference
W3.CSS Reference
Bootstrap Reference
PHP Reference
HTML Colors
Java Reference
Angular Reference
jQuery Reference


Top2 Examples Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery


FORUM | О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.

Авторское право 1999-2023 по данным Refsnes. Все права защищены.
W3Schools использует W3.CSS.

Введение в JavaScript RegEx

Регулярные выражения — это шаблоны, соответствующие комбинации символов в строке. JavaScript поддерживает регулярные выражения в основном для текстового поиска и замены текста.

Что такое регулярные выражения JavaScript?

RegEx JavaScript — это последовательность символов, формирующая шаблон поиска. Вы можете определить, что нужно искать в тексте, с помощью регулярных выражений. Эти выражения могут состоять из любого количества символов, будь то буквы, цифры или специальные символы. Они чаще используются для текстового поиска и операций замены текста.

Общий синтаксис:

/шаблон/флаг

Синтаксис состоит из двух косых черт, разделенных шаблоном символов и заканчивающихся флагом.

Что такое флаги, шаблоны и квантификаторы?

Для эффективной работы регулярных выражений крайне важны флаги, шаблоны и квантификаторы. Давайте попробуем понять их один за другим.

Флаги

Флаги изменяют поведение JavaScript RegEx. Их можно добавить в конец литерала RegEx или указать в качестве второго аргумента регулярного выражения. Вот список флагов или модификаторов, поддерживаемых JavaScript. 9и $ используются для соответствия началу и концу каждой строки соответственно

  • и — Юникод. Если этот флаг не поддерживается, вы должны сопоставлять определенные символы Юникода с \uXXXX, где XXXX — это значение символа в шестнадцатеричном формате
  • .
  • y — Находит все последовательные совпадения
  • В приведенном выше примере предоставленным шаблоном было слово «Добро пожаловать». Как видите, слово выделено в тексте. Флаг «g» используется для обозначения того, что он выделяет все совпадения в тексте для слова «Добро пожаловать». 9a-z] — находит все символы, не являющиеся буквами от a до z. Он также выбирает все пробелы

  • [0–9] — поиск всех цифр от 0 до 9 
  • [a-z|0-9] — находит любой символ из цифр, разделенных «|»
  • В этом примере совпадают все цифры.

    Если внимательно присмотреться, заглавные буквы не совпадают. Это потому, что флаг «i» не используется. Все строчные буквы алфавита и цифры совпадают. 9’ (знак вставки) указывает, что символы, следующие за ним, не должны совпадать с текстом. В приведенном выше примере все строчные буквы игнорируются. Однако в тексте совпадают все цифры, пробелы и прописные буквы.

    Квантификаторы

    Квантификаторы определяют количество вхождений строки. Чаще всего используются квантификаторы «+», «*» и «?».

    + – Указывает на одно или несколько вхождений символа n

    .

    * — указывает на ноль или более вхождений символа n

    ? — Указывает ноль или одно вхождение символа n

    .

    В приведенном выше примере мы ищем в строке символ «а» и правильно, они выделены.

    Хотя квантификатор «*» указывает на ноль или более вхождений символа «а», за ним следует символ «b». В результате буква «а» в первом тексте не совпадает, так как за ней не следует буква «б».

    В этом примере сопоставляются все строки с нулем или более вхождений «a», за которыми следует ноль или более вхождений «b». Следовательно, буква «а» в первом тексте совпадает.

    Что такое метасимволы?

    Символы со специальным значением называются метасимволами. Ниже приведен список нескольких метасимволов и их описания.

    .

    Находит символ, кроме символа новой строки или знака конца строки 

    \w 

    Соответствует любому символу слова

    \Вт

    Соответствует любому слову, не являющемуся символом слова

    Соответствует любому символу пробела

    \S

    Соответствует любому символу, который не является пробелом (табуляция, пробелы, разрывы строк)

    В приведенном выше примере все символы слова совпадают.

    Совпадают все символы, не являющиеся словами.

    Совпадают все пробельные символы.

    Все цифры совпадают.

    Простая демонстрация

    Теперь, когда вы поняли реализацию регулярных выражений JavaScript, давайте узнаем, как искать номер телефона с помощью этих выражений.

    Рассмотрим восьмизначный телефонный номер с трехзначным кодом в начале. Его можно записать двумя способами: 

    .

    XXX — XXXXXXXX или XXXXXXXXXXX, где X представляет цифру.

    Можно написать одно выражение, соответствующее обеим этим строкам.

    Здесь число в фигурных скобках указывает количество совпадающих цифр. Наличие квантификатора «?» указывает на ноль одного вхождения предыдущего токена, т. е. дефиса. Обе строки сопоставляются для одного и того же шаблона символов.

    Изучите все основы JavaScript, jQuery, Ajax и многое другое с помощью сертификационного учебного курса по JavaScript. Ознакомьтесь с предварительным просмотром курса!

    Следующие шаги

    Эта статья о регулярных выражениях JavaScript познакомила вас с регулярными выражениями.