Основные понятия
Регулярное выражение - это текстовый шаблон, который включает в себя нормальные символы (например, буквы между A до z) и специальные символы (называемые «метахары»). Паттерн описывает одну или несколько строк, чтобы соответствовать при поиске текста.
Во -первых, рекомендуется несколько редакторов регулярного выражения
Debuggex: https://www.debuggex.com/
Pyregex: http://www.pyregex.com/
Regexper: http://www.regexper.com/
Регулярные выражения - это операции поиска и замены строк. Регулярные выражения широко используются в текстовых редакторах, такие как регулярные выражения используются для:
[копия] Проверьте, содержит ли текст указанное характерное слово
Узнайте, где в тексте расположены соответствующие характерные слова
Извлечение информации из текста, например: подстроки строк
Изменить текст
ПРИМЕЧАНИЕ. Регулярные выражения обычно используются для двух задач: 1. Проверка, 2. Поиск/заменить. При использовании для проверки обычно необходимо добавить ^ и $ до и после, чтобы соответствовать всей строке для проверки; Добавить ли это ограничение при поиске/замене зависит от требований поиска. Кроме того, также можно добавить /b вместо ^ и $ до и после. За исключением нескольких, ограничений не добавляются до и после общих регулярных выражений, перечисленных в этой таблице. Пожалуйста, обращайтесь с ними сами по мере необходимости.
Приоритетный приказ
После построения регулярного выражения вы можете оценить как математическое выражение, то есть вы можете оценить слева направо и в приоритетном порядке. В следующей таблице перечислены приоритетный порядок различных операторов регулярного выражения от самого высокого приоритета до самого низкого приоритета:
| Оператор | описывать |
|---|---|
| / | Символ побега |
| (), (? :), (? =), [] | Брекеты и квадратные скобки |
| *, +,?, {n}, {n,}, {n, m} | Квалификатор |
| ^, $, /anymetacharacter | Положение и порядок |
Создавать регулярные выражения
Метод построения регулярных выражений такой же, как и метод создания математических выражений. То есть используйте несколько метахарактеров и операторов, чтобы объединить небольшие выражения для создания больших выражений.
Регулярное выражение может быть сконструировано, поставив различные компоненты рисунка экспрессии между парой сепараторов.
Для JScript разделитель - это пара символов прямых чертов (/). Например:
/выражение/
Для VBScript пара цитат ("") используется для определения границ регулярного выражения. Например:
Кода -копия выглядит следующим образом:
"выражение"
См. Пример
Кода -копия выглядит следующим образом:
// Сопоставьте, является ли учетная запись законной (начиная с букв, разрешенные 5-16 байтов, разрешенные буквенно-цифровые подчеркивания разрешены
var re = new Regexp ("^[a-za-z] [a-za-z0-9 _] {5,19} $");
if (re.test (aaaa)) {
оповещение («правильный формат»);
}еще{
Alert («ошибка формата»);
}
Компоненты регулярных выражений могут быть единственным символом, набор символов, ряд символов, выбор между символами или любая комбинация всех этих компонентов.
Обычно используются регулярные выражения
Регулярное выражение, соответствующее китайским иероглистам: [/u4e00-/u9fa5]
Комментарий: Сопоставление китайцев действительно головная боль, это легко сделать с этим выражением
Совместите двойные символы (включая китайские иероглифы): [^/x00-/xff]
Комментарий: он может быть использован для расчета длины строки (двойной счетчик длины символа 2, счетчик символов ASCII 1)
Регулярное выражение соответствует пустым строкам:/n/s*/r
Комментарий: можно использовать для удаления пустых линий
Соответствие регулярным выражению тегов HTML: <(/s*?) [^>]*>.*? <// 1> | <.*? />
Комментарий: версия, распространяемая онлайн, очень плоха, и вышеупомянутая может только соответствовать детали, и все еще бессильно использовать сложные вложенные маркеры.
Регулярное выражение, соответствующее началу и конечному пробелу символов: ^/s*|/s*$
Комментарий: его можно использовать для удаления символов пробелов в начале и конце строки (включая пробелы, вкладки, разрывы страниц и т. Д.), Очень полезное выражение
Регулярное выражение, соответствующее адресу электронной почты: /w+(*.+.^/w+)**@/w+(^-
Комментарий: это очень практично при проверке формы
Сопоставление URL-адреса регулярного выражения: [a-za-z]+: // [^/s]*
Комментарий: функции версии, циркулирующей онлайн, очень ограничены, и вышеперечисленное может соответствовать потребностям
Совместите, является ли учетная запись законной (начиная с букв, разрешено 5-16 байтов, разрешены буквенно-цифровые подчеркивания): ^[a-za-z] [a-za-z0-9 _] {4,15} $
Комментарий: это очень практично при проверке формы
Сопоставьте внутренний номер телефона:/d {3}-/d {8} |/d {4}-/d {7}
Комментарий: соответствующие формы следующие: 0511-4405222 или 021-87888822
Сопоставьте номер QQ Tencent: [1-9] [0-9] {4,}
Комментарий: номер QQ Tencent начинается с 10000
Сопоставьте китайский почтовый код: [1-9]/d {5} (?!/D)
Комментарий: почтовый код Китая - 6 цифр
Match Id Card: /d {15} | /d {18}
Комментарий: идентификационная карта Китая - 15 или 18 цифр
Match IP -адрес: /d+/./d+/./d+/./d+
Комментарий: это полезно при извлечении IP -адресов
Соответствовать конкретным числам
[копия] ^[1-9]/d*$ // Совместите положительные целые числа
^-[1-9]/d*$ // Сопоставление отрицательных целых чисел
^-?
^[1-9]/d*| 0 $ // Сопоставьте неотрицательные целые числа (положительное целое число + 0)
^-[1-9]/d*| 0 $ // Сопоставьте неположительные целые числа (отрицательные целые числа + 0)
^[1-9]/d*/./D*| 0 /./ d*[1-9]/d*$ // Совместите положительные номера с плавающей запятой
^-([1-9]/d*/./D*| 0 /./ d*[1-9]/d*) $ // Сопоставление отрицательных номеров с плавающей запятой
^-? ([1-9]/d*/./D*| 0 /./ d*[1-9]/d*| 0?/. 0+ | 0) $ // Соответствие номеров с плавающей запятой
^[1-9]/d*/./D*| 0 /./ d*[1-9]/d*| 0?/. 0+ | 0 $ // Сопоставление неотрицательных номеров с плавающей запятой (положительные номера с плавающей запятой + 0)
^(-([1-9]/d*/./D*| 0 /./ d*[1-9]/d*)) | 0?/. 0+ | 0 $ // Сопоставьте неположительные номера с плавающей запятой (отрицательные номера с плавающей запятой + 0)
Комментарий: это полезно при обработке больших объемов данных, и будьте осторожны, чтобы исправить их при подробном применении.
Соответствовать конкретной строке
[копия]^[a-za-z]+$ // Сопоставьте строку, состоящую из 26 английских букв
^[AZ]+$ // Сопоставьте строку, состоящую из 26 английских букв Капитализации
^[AZ]+$ // Сопоставьте строку, состоящую из 26 английских букв.
^[A-za-z0-9]+$ // Сопоставьте строку, состоящую из чисел и 26 английских букв
^/w+$ // Сопоставьте строку, состоящую из чисел, 26 английских букв или подчеркивания
Комментарий: некоторые из самых основных и наиболее часто используемых выражений
Карта разума