Некоторые примеры регулярных выражений в PHP
Теперь вы знакомы с основными составляющими синтаксиса регулярных выражений типа POSIX. Однако научиться использовать их вместе - это самая важная задача.
Обычно начинающие программисты пытаются создать некий универсальный шаблон, который будет удовлетворять всем заданным условиям. Однако это может очень осложнить простую, на первый взгляд, задачу. При проектировании регулярных выражений иногда лучше получить приблизительную структуру, чем добиваться абсолютной точности (например, шаблон для проверки e-mail адреса в идеале должен занимать около трех страниц текста). Приведем несколько примеров шаблонов, которые можно применять на практике. Внимательно разберите каждый из них, уяснив принцип их построения.
Идентификатор
В главе 4, мы описывали предъявляемые условия к названиям переменных. Теперь рассмотрим шаблон, задающий все эти условия: ^\\$[_a-zA-Z][_0-9a-zA-Z]*
Гиперссылка
Для поиска в тексте гиперссылок можно использовать следующий шаблон: <а href=[^>]+>[^<]+
E-mail адрес
Представьте, что на Web-сайте имеется форма, где пользователь вводит свой e-mail адрес. Вашему вниманию предлагается два примера регулярных выражений:
- ^.+@.+\\..+$ - этот шаблон предъявляет к строке очень мягкие условия. Его упрощенная схема имеет вид: что угодно@что угодно.что угодно;
- ^[a-z0-9\._-]+@[a-z0-9\._-]+\.[a-z]{2,4}\$ - если вам нужна более строгая проверка, то можно применить этот шаблон.