Примеры регулярных выражений

Примеры регулярных выражений

От автора: приветствую вас, друзья. В этой статье мы рассмотрим примеры регулярных выражений, которые можно использовать в различных языках программирования — PHP, JavaScript и др. Приступим?

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

Первый и, пожалуй, наиболее частый случай — валидация email. Это и не удивительно, поскольку email в вебе используется сплошь и рядом: для регистрации, для отправки писем и т.д. В сети вы можете найти множество самых разных примеров регулярок для проверки email. Я же зачастую использую вот такой простой вариант:

$pattern = "#^.+@.+\..+$#";

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

С проверкой email мы разобрались. Теперь давайте возьмем еще какой-нибудь типовой пример, пусть это будет проверка даты, задача также не из редких. Допустим нам необходимо проверить дату на соответствие одному из двух следующих форматов: YYYY-MM-DD или YYYY/MM/DD. Другие форматы даты должны быть забракованы.

Возможный вариант регулярного выражения будет таким:

$pattern = "#^\d{4}(-|/)\d{2}\1\d{2}$#";

Он, как и предыдущий вариант регулярки, без проблем справляется со своей задачей:

При этом вы легко можете модифицировать пример регулярного выражения, добавляя свои символы, например пробелы или точки, в качестве разделителя частей даты.

Ну а на этом у меня сегодня все. Больше о регулярных выражениях вы можете узнать из нашего курса по регулярным выражениям. Удачи!

Хотите изучить регулярные выражения на PHP?

Прямо сейчас посмотрите 12-ти часовой курс по регулярным выражениям на PHP!

Смотреть курс

Метки:

Комментарии Вконтакте:

Комментарии Facebook:

Комментарии (1)

  1. Evgeniyholon

    Такой паттерн
    $pattern = «#^\d{4}(-|/)\d{2}\1\d{2}$#»;
    не будет работать.
    Необходимо выражение взять в одинарные кавычки вместо двойных или экранировать слеш перед единицей.
    $pattern = «#^\d{4}(-|/)\d{2}\\1\d{2}$#»;
    $pattern = ‘#^\d{4}(-|/)\d{2}\1\d{2}$#’;

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree