• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Образцы Регулярных Выражений

Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,562
Баллы
155
Регулярное выражение для проверки email
Код:
if (preg_match('/^([0-9a-zA-Z]([-.w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-w]*[0-9a-zA-Z].)+[a-zA-Z]{2,9})$/si', $subject, $regs)) {  
    $result = $regs[0];  
} else {  
    $result = "";  
}
Описание Это регулярное выражение для проверки email адреса. Основные пункты:
1) Разрешены имена пользователей в email с 1 или 2 буквами, а также 3 и более. Разрешены символы "-", ".", "_" в середине ника пользователя email.
Не разрешено:
Имя пользователя не может начинаться с символов "-", ".", "_" или любого не буквенного символа.
2) Разрешены любые иерархические домены. Например: admin.office.com. Правила символов такие же как и в 1-м пункте.
3) Разрешается от 2 до 9 символов в TLD имени домена.
4) Не разрешены адреса с указанием IP.
Регулярное выражение совпадет
i@phpmaster.com | regexclub@q-q.com | admin@se.aaa.kolizey

Регулярное выражение не совпадет
.@phpmaster.com | regexclub@q-.com | admin@se.aaa.kolizey


Регулярное выражение для проверки почтового кода Нидерландов
Код:
if (preg_match('/^[1-9]{1}[0-9]{3}s?[A-Z]{2}$/si', $subject, $regs)) {  
    $result = $regs[0];  
} else {  
    $result = "";  
}
Описание 1234AB | 1234 AB Non-Matches 123BBB | 023AB Это регулярное выражения для поиска почтового кода Нидерландов.

Регулярное выражение совпадет
1234AB | 1234 AB
Регулярное выражение не совпадет
123BBB | 023AB



Регулярное выражение для поиска времени
Код:
if (preg_match('/^([0-1][0-9]|[2][0-3]):([0-5][0-9])$/si', $subject, $regs)) {  
    $result = $regs[0];  
} else {  
    $result = "";  
}
Описание Это регулярное выражения ищет совпадения с правильным временем в формате HH:MM

Регулярное выражение совпадет
02:04 | 16:56 | 23:59
Регулярное выражение не совпадет
02:00 PM | PM2:00 | 24:00

Регулярное выражение для номера социального страхования
Код:
if (preg_match('/^(?!000)([0-6]d{2}|7([0-6]d|7[012]))([ -]?)(?!00)dd3(?!0000)d{4}$/si', $subject, $regs)) {  
    $result = $regs[0];  
} else {  
    $result = "";  
}
Описание Это регулярное выражения для поиска номера социального страхования, который применяется в США.

Регулярное выражение совпадет
078-05-1120 | 078 05 1120 | 078051120
Регулярное выражение не совпадет
987-65-4320 | 000-00-0000 | (555) 555-5555


Регулярное выражение для пути к файлу txt
Код:
if (preg_match('/^(([a-zA-Z]:)|(\{2}w+)$?)(\(w[w ]*))+.(txt|TXT)$/si', $subject, $regs)) {  
    $result = $regs[0];  
} else {  
    $result = "";  
}
Описание Этот шаблон для регулярного выражения проверят путь к txt-файлу. Регулярное выражение может быть использовано для проверки пути и файла. Очень просто может быть изменено расширение файла или другие части фильтра.

Регулярное выражение совпадет
c:file.txt | c:foldersub folderfile.txt | networkfolderfile.txt
Регулярное выражение не совпадет
C: | C:file.xls | folder.txt


Проверка соответствия формату даты: dd MMM yy
Код:
if (eregi('^[0-3]{1}[0-9]{1}[ ]{1}(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec|JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|  
SEP|OCT|NOV|DEC|jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec){1}[ ]{1}[0-9]{2}$', $subject)) {  
    echo "Совпадение!";# Successful match  
} else {  
    echo "Нет совпадений!";# Match attempt failed  
}
Описание
Позволяет получить все выражения дате форматированные по в стиле 'dd MMM yy'
Совпадения
12 DEC 08 | 03 jan 91 | 30 Mar 82
Не совпадет
41 DEC 08 | 03 jan 1991 | 30 Mar '82


Поиск 16ти-разрядных чисел в тексте
Код:
#?[0-9A-Fa-f]{6}  
preg_match_all('/#?[0-9A-Fa-f]{6}/si', $subject, $result, PREG_PATTERN_ORDER);  
$result = $result[0];




 
Вверх Снизу