Регулярные выражения.ppt
- Количество слайдов: 18
PHP-Регулярные выражения Регулярное выражение – шаблон (патэрн) – который сопоставляется со строкой. Сопоставление регулярного выражения со строкой дает либо успешный, либо отрицательный результат.
PHP-Регулярные выражения • POSIX – Portable Operating System Interface – Переносимый интерфейс операционной системы (Reg. Exp, Reg. Ex) • PCRE – Perl Compatible Regular Expression – регулярные выражения языка Перл
Пример function prov_adress(obj) { var adr=obj. mail. value; var par=obj. pas. value; var adr_pattern=/[0 -9 a-z_]+@[0 -9 a-z_]+. [a-z]{2, 5}/i; var par_pattern=/[0 -9 a-z]+/i; var prov=adr_pattern. test(adr); var prov 1=par_pattern. test(par); if (prov==true && prov 1==true) { alert("Вы зарегистрированы!"); } else { alert("Введенные данные некорректны!"); } }
PCRE • test() - выполняет поиск совпадений регулярного выражения • replace() - выполняет поиск регулярного выражения и замену
PCRE Проверка имени ("/^[а-яa-z]{2, 10}$/i", $Name)) Проверка даты ("/^\d{2}\. \d{4}$/", $BD)) Проверка числа ("/^\d+(\. \d{1, 2})? $/", $Coast))
PCRE Общий вид ргулярного выражения /регулярное выражение/модификаторы Модификаторы: i – без учета регистра s – однострочный режим x – пропуск пробелов m - многострочный режим X, e, a, D, S, u, U
PCRE Команды языка: • Простые символы • Управляющие конструкции • Мнимые символы
PCRE - Простые символы Любой символ в строке на PCRE обозначает сам себя, если он не является управляющим. Если необходимо вставить символ который является управляющим то перед ним ставится слэш “”
PCRE - Простые символы (’/о/’, ’О’, ”молоко”) // м. Ол. Ок. О
PCRE - Управляющие конструкции “. ” Один любой символ “[символы]” Класс (набор) символов “[^символы]” Отрицательный класс “s” – пробельный символ “S” – НЕ пробельный символ “w” – любая буква или цифра “W” – НЕ буква и НЕ цифра “d” – цифра от 0 до 9 “D” - НЕ цифра
PCRE - Управляющие конструкции ТОЛЬКО В КЛАССАХ [: alpha: ] — буква; [: digit: ] — цифра; [: alnum: ] — буква или цифра; [: space: ] — пробельный символ; [: blank: ] — пробельный символ или символы с кодом 0 и 255; [: cnrtl: ] — управляющий символ; [: graph: ] — символ псевдографики; [: lower: ] — символ нижнего регистра; [: upper: ] — символ верхнего регистра; [: print: ] — печатаемый символ; [: punct: ] — знак пунктуации; [: xdigit: ] — цифра или буква от A до Z.
PCRE - Управляющие конструкции Квантификаторы повторений (символ или класс)Квантификатор * - ноль или больше повторений + - один и более повторений ? – ноль либо одно повторение {n, m} – повторить от n до m раз {n} - повторить n раз {n, } - повторить n раз или более
PCRE - Управляющие конструкции /ab*/ - b может быть, а может и нет /. +/ - любое количество, но не менее одного /as? x/ - символ s может быть или не быть, но только один /d{2, 4}/ - число состоящие из двух, трех или четырех чисел
PCRE - Управляющие конструкции Скобки () – группировка выражения /(wdw){2}/ - последовательность (буква число буква) должна повториться два раза
PCRE - Управляющие конструкции Скобки () – “карманы” Найти и заменить все теги /<(S+)>. *</1>/
PCRE - Мнимые символы ^ - начало строки $ - конец строки b – начало или конец слова B – НЕ начало и НЕ конец слова
PCRE Оператор альтернативы “|” (или) /Дорог(ой|ая)/ - тоесть ищем Дорогой или Дорогая
PCRE Приоритеты () ? + * {} ^ $. символы |
Регулярные выражения.ppt