Аргерих Л. О языке РНР. Часть 2. Страница 26


Если объединить два приведенных регулярных выражения как альтернати­вы (ветви), получим следующее регулярное выражение, которое соответст­вует нулю или любому числу, начинающемуся не с нуля:

"~{0|[1-9][0-9]*)$"

Добавим поддержку необязательного знака - (минус) перед числами. Помес­тив за символом зададим его вхождение ноль или один раз. Теперь регу­лярное выражение примет вид:

"~(0|-?[1-9Л0-9]»)$"

Но это выражение пока не учитывает десятичные знаки, которые могут быть необязательны:

"(\.[0-9]{1,2})?"

Это означает . (точку) и последующие 1 или 2 цифры. Обратный слэш позво­ляет литерально задать специальный символ точки. Вся эта часть необяза­тельна, поскольку за ней следует ? (вопросительный знак). Объединив по­следние два шага, получим:

"<ОИ[1-9][0-9И\.[0-8]{1.2»?)Г

Приведенное регулярное выражение удовлетворяет всем установленным на­ми критериям, за исключением запятых. Обычно запятые лучше удалить перед проверкой допустимости строки:

str_replace(",", "", "$currency_value") Вот регулярное выражение, учитывающее запятые, разделяющие тысячи: "*(0|-?[1-9]+|[0-9]{1,3}(,[0-9](3))*)(\.[0-9]{1,2})?$"

Проверка адресов электронной почты

Рассмотрим адрес электронной почты user_name@my. domain-name, com. В нем две составляющие - имя пользователя и имя домена, разделенные знаком В имени пользователя могут присутствовать буквы верхнего и нижнего ре­гистра, цифры, точки, знаки минуса и подчеркивания (то же относится к имени сервера, исключая знаки подчеркивания):

"[-a-zA-ZO-9, J"

Этого выражения достаточно для проверки имени пользователя. Для про­верки разделителя между именем пользователя и именем домена требуется добавить

"+@[-a-zA-Z0-9. ]"

Для проверки домена верхнего уровня добавим такое выражение:

"(\.[-a-zA-Z0-9]+)" Объединяя все перечисленные шаги, получим:

"-([-a-zA-Z0-9. J+©[-a-zA-Z0-9.]+(\.[-a-zA-Z0-9]+)+)*$"

Есть несколько вариантов регулярных выражений для проверки синтаксиса адресов электронной почты. Дополнительные сведения можно найти в кни­ге издательства Wrox «Beginning РНР4» (ISBN 1-861003-73-0).

Регулярные выражения в РНР

Регулярные выражения, с которыми мы здесь называются регу­

лярными выражениями в стандарте PO8IX. POSIX - аббревиатура для Por­table Operating System Interface (интерфейс переносимой операционной сис­темы). Это стандарт, определенный для интерфейсов сервисов приложений комиссией по стандартам переносимых приложений Portable Application Standards Committee. Дополнительную информацию можно найти на сайте http: //http://www.pasc.org/"> www.pasc.org/.




Хотите смотреть любимые каналы через интернет? Наш шаринг сервер позволит вам это сделать. Услугу можно протестировать совершенно бесплатно в течении суток, а потом подключить по выгодной для вас цене.