Это 4-й день моего участия в августовском испытании обновлений.Подробности о событии:Испытание августовского обновления
Регулярные выражения, эта вещь, я считаю, определенно вызовет много головной боли у многих людей, сегодня я перейду к регулярным выражениям, которые вызывают у людей головную боль.
Введение в регулярные выражения
Регулярное выражение (Regular Expression): регулярное выражение — это логическая формула для работы со строками, которая заключается в использовании некоторых предопределенных определенных символов и суммы этих конкретных символов для формирования «строки правила». логика фильтрации строк.
Роль регулярных выражений
- Соответствует ли данная строка логике фильтрации (соответствию) регулярного выражения.
- Мы можем получить нужную нам часть (извлечь) из строки с помощью регулярных выражений.
- Мощная возможность замены строки (replace).
Особенности регулярных выражений
- Гибкость, логика и функциональность без износа.
- Сложное управление струнами может быть достигнуто быстро и очень просто.
Синтаксис регулярных выражений
Состав регулярных выражений
- нормальные символы abc китайский 123 и т. д.
- Специальные символы (метасимволы, квалификаторы, скобки): символы со специальным значением в регулярных выражениях.
метасимвол
Метасимволы — это символы, имеющие особое значение в регулярных выражениях.
метасимвол | инструкция |
---|---|
\d | совпадение чисел |
\D | совпадать с нецифрами |
\w | Совпадение букв или цифр или символ подчеркивания_ |
\W | Соответствует не буквенно-цифровым символам, числам, знакам подчеркивания_ |
\s | соответствовать пробелу (пробелу) |
\S | соответствие без пробелов |
. | соответствует любому одиночному символу, кроме новой строки (ввод) |
квалификатор
Квалификатор — это количество раз, когда появляется управляющий символ, а количество символов ограничено.
квалификатор | инструкция |
---|---|
n* | Соответствует любой строке, содержащей ноль или более n. п{0,} |
n+ | Соответствует любой строке, содержащей хотя бы один n. п{1,} |
n? | Соответствует любой строке, содержащей ноль или один n. {0,1} |
n{x} | Соответствует строке, содержащей x последовательностей n. |
n{x,} | Соответствует строке, содержащей не менее x последовательностей n. |
n{x,y} | Соответствует строке, содержащей от x до y последовательностей n. |
n$ | Соответствует любой строке, оканчивающейся на n. |
^n | Соответствует любой строке, начинающейся с n. |
Уведомление: |
- Когда используется регулярное выражение, проверяется вся строка, и она может быть сопоставлена только в том случае, если она полностью совпадает. Иначе не совпадает.
- Ввиду ограничения количества раз в фигурных скобках, при сопоставлении строк первое совпадение в прошлом, сначала по максимальному количеству раз, а если оно не соответствует максимальному количеству раз, то по меньшему совпадению .
- Когда ограничение количества раз в фигурных скобках не менее 0, то если в строке нет совпадающего элемента, то она удовлетворяет требованиям, а если символы в строке не совпадают, то она также удовлетворяет требованиям.
квадратных скобках
Скобка представляет строку, а цель скобок — управлять областью действия символа.
квадратных скобках | инструкция |
---|---|
[abc] | Находит любой символ между скобками. |
[^abc] | Найдите любой символ, который не находится в квадратных скобках, ^ означает отрицание в квадратных скобках. |
[0-9] | Найдите число от 0 до 9. |
[a-z] | Находит символ от любой строчной буквы a до строчной буквы z. |
[A-Z] | Найдите любой символ от заглавной A до заглавной Z. |
[A-z] | Найдите букву (включая регистр и подчеркивание). |
[[\u4e00-\u9fa5]] | Найдите китайский иероглиф. |
При сопоставлении следуйте [правилам], чтобы найти от начала до конца.Если это глобальное совпадение, если в начале есть удовлетворяющий элемент, когда он сопоставляется позже, сопоставление начнется со следующего удовлетворяющего элемента.
или режим
Специальные символы: обычный1|обычный2 или. Матч или одна из двух сторон может быть сопоставлена.
Например: google, baidu, bing; // соответствует одной из трех строк
Обычный: google|baidu|bing
режим группировки
Специальные символы: (обычные) ;
Группа относится к небольшой группе, а группировка состоит в разделении большой группы на несколько небольших групп.
Например: контролировать количество раз, когда ваше имя появляется подряд, не менее 1 раза, не более 3 раз
Обычный: ^(брюс){1,3}$
модификатор
- g, полное имя global, имеет значение global, указывающее глобальное соответствие. как:
var reg = /hello/g
; - i, полное название ignore, имеет значение игнорировать, игнорировать, что означает, что при сопоставлении букв верхний и нижний регистр букв может быть проигнорирован. как:
var reg = /hello/i
; - gi, совпадение glob и игнорирование регистра используются вместе. как:
var reg = /hello/gi
;
Обычный escape-символ
Представляет специальные символы в регулярном выражении. Чтобы удалить особое значение ., его нужно экранировать:\.
Использование регулярных выражений в js
объект регулярного выражения
- Создайте объект регулярного выражения
/**
方式1: 语法: var 变量 = new RegExp("规则","修饰符")
*/
var reg = new RegExp('\\d','g')
/**
方式2: 语法:var 变量 = /正则表达式/ (推荐使用)
*/
var reg = /\d/g;
- Обнаружение совпадений: обычные объектыТест (строка); Средство для определения того, соответствует ли строка символов правилу. Вернуть истину и ложь
Обычное использование метода строкового объекта
- String.match(обычный объект); Получите подстроку, соответствующую обычному объекту, и верните массив.
- String.replace(обычный объект, замененное содержимое); Заменить совпадающую обычную подстроку. Возвращает замененную строку.
Ставьте лайки и поддерживайте, оставляйте ненавязчивый аромат в руке, и будьте почитаемы, спасибо, что оставили свои следы.
Если вы заинтересованы в детской обуви, оставьте сообщение ниже и оставьте регулярные выражения, которые вы часто используете, чтобы учиться друг у друга.