У мові програмування, зокрема PHP, регулярні вирази являють собою спеціальні записи «маски», за допомогою яких може проводитися аналіз значень будь-яких змінних згідно з встановленим шаблоном. Зручність використання регулярних виразів в скриптах відіграє істотну роль, так як програмування саме по собі має на увазі роботу з даними.

Тепер про те, де можуть бути використані регулярні вирази. Приміром, у вас на сайті є яка-небудь форма, яка містить певний набір полів, їх імовірно користувач повинен заповнити і надіслати на сервер. На стороні сервера потрібно перевіряти дані на коректність введення, і тут можуть стати в нагоді регулярні вирази. Насправді регулярки, як їх називають по-простому, можуть використовуватися в різних ділянках коду, там, де є потреба зробити аналіз даних, для подальших маніпуляцій з ними.

Раніше в нашому блозі так само публікувалися статті про парсингу тексту і заміни в них посилань, витягу посилань з веб-сторінок, і т. д. В доборі потрібних даних із загальної маси там так само використовуються регулярні вирази.

У цьому посту я вирішив зробити добірку популярних виразів, які можуть стати в нагоді на практиці багаторазово.

Регулярний вираз для перевірки логіна:

^[a-zA-Z][a-zA-Z0-9-_\.]{1,20}$

Регулярний вираз для перевірки набору букв і цифр російського і англійського алфавіту:

^[а-яА-ЯеЕа-zA-Z0-9]+$

Регулярний вираз для перевірки коректності доменного імені сайту:

/^(http|https|ftp)://([A-Z0-9][A-Z0-9_-]*(?:.[A-Z0-9][A-Z0-9_-]*)+):?(d+)?/?/i

Регулярний вираз для перевірки коректності md5-хеш:

/^[a-f0-9]{32}$/

Регулярний вираз для перевірки шістнадцяткове значення кольору:

/^#(?:(?:[a-fd]{3}){1,2})$/i

Регулярний вираз для перевірки IPv4 адреси:

((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)

Регулярний вираз для перевірки IPv6 адреси:

((^|:)([0-9a-fA-F]{0,4})){1,8}$

Регулярний вираз для перевірки MAC-адреси:

([0-9a-fA-F]{2}([:-]|$)){6}$|([0-9a-fA-F]{4}([.]|$)){3}

Регулярний вираз для перевірки дати у форматі YYYY-MM-DD:

[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])

Регулярний вираз для перевірки дати у форматі DD/MM/YYYY:

(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19/20)\d\d

Регулярний вираз для перевірки часу у форматі HH:MM:SS

^([0-1]\d|2[0-3])(:[0-5]\d){2}$

Статейка буде поступово доповнюватися, пропоную залишати свої варіанти шаблонів регулярних виразів для перевірки, не забуваємо зберегти сторінку в закладки:)

Приклад використання регулярного виразу:

if (preg_match(‘/^[a-f0-9]{32}$/’, $md5)){
echo ‘MD5 в порядку’;
} else {
echo ‘MD5 має некоректний формат’;
}
Додав: htmaker, 15.09.2015 р.
(3 голосів, середній: 5,00 з 5)

Завантаження…

Діліться з друзями:

См. також:


Пісочниця для PHP
Рубрика: PHP, Інструменти

Конфіг файли
Рубрика: PHP

Установка XCache в Linux CentOS
Рубрика: Linux, PHP

Використання SOAP в PHP
Рубрика: PHP

Встановлення PHP Soap на CentOS
Рубрика: Linux, PHP

Обсяг даних в зручному форматі на PHP
Рубрика: PHP

Транслітерація символів на PHP
Рубрика: PHP

Як перетворити URL-рядок в масив?
Рубрика: PHP

Як дізнатися реальний IP-адресу клієнта в PHP
Рубрика: PHP