Коллега ищет, чтобы узнать регулярное выражение так что я решил поставить его здесь. Это первый в серии регулярных выражений, связанных статьях. В частях для подражания, мы собираемся использовать наш Регулярные выражения узнать другие темы относятся к Интернет в то время как simltaneously расширения на регулярных выражений знаний.
Regex Быстрый старт
- A Вертикальная черта |, иногда называют трубы, является “ИЛИ” оператор в регулярных выражениях. Это указывает на то, что картина влево или вправо приемлемо. На клавиатуре, этот ключ, как правило, “капитал”, или “сместился версию”, ключа обратной косой.
- Скобки круглые скобки () что выбрать раздел регулярного выражения. Они могут быть использованы так же, как в математике, когда порядок операций регулируется. The “выбор” можно ссылаться в другом месте, хотя мы рассмотрим, что спустя.
- A точка . это специальный символ, который соответствует любой символ, отличный “новой строки” символов.
- Обратная косая черта \ иногда называют побег характер. Есть много символов, таких как скобок и вертикальную полосу выше, что имеют специальное значение. Обратная косая черта используется для отнять (побег) те особые смыслы. Например, указать фактическую точку, вам нужно бежать специальный точечный характер: \.
- Звезда * это оператор, который означает, что предыдущий символ может повторяться ноль или более раз. Это часто сочетается с точкой производить “подстановки” шаблон, который соответствует строке любой длины: .*
Используя вертикальную полосу и управляющий символ
Здесь у нас есть ряд примеров веб-адресов:
HTTP://dogma.swiftspirit.co.za/ http://swiftspirit.co.za/ http://google.com /
Если я хочу написать шаблон, который их всех, Я мог бы использовать вертикальную полосу (правило 1 выше) отделить их. Я бы тогда также нужно использовать управляющий символ (правило 4 выше) для полных остановок:
HTTP://догма . swiftspirit . совместно . ZA /|HTTP://swiftspirit . совместно . ZA|HTTP://Google . ком /
Для выше будет соответствовать каждый URI в моем примере однако это не специально эффективным или элегантный.
Использование скобки
То же самое может быть достигнуто следующим, короче, регулярное выражение, используя скобки из правила 2 выше:
HTTP://((|догма .)swiftspirit . совместно . ZA|Google . ком)/
Обратите внимание, что я просто помещается общие пункты, например “HTTP://” и “/”, вне выборов.
Что делать, если вы хотите, чтобы соответствовать текст, который может быть что угодно?
Может быть, у вас есть больше, что вы все еще хотите, чтобы соответствовать? Например, если я поставлю http://swiftspirit.co.za/downloads/ и я все еще хочу картина, совпадающее или любой другой URL в моем веб-сайте. Или, может быть его хорошо для HTTP://все.google.com /все чтобы также соответствовать. Мы можем использовать специальный точку и звезды символы из правил 3 и 5 сверху:
HTTP://((|догма .)swiftspirit . совместно . ZA|(|.*\.)Google . ком)/.*
Просто добавив, что любой символ может появиться ноль или более раз позволяет намного больше матч без добавления слишком много, чтобы сложности в регулярных автора:
(|.*\.)
Выше от перед шаблона google.com. Вертикальная черта указывает два варианта здесь: либо пустой (таким образом, мы в конечном итоге с просто google.com), или .*\. (поэтому у нас есть все с последующим буквальном точки и что затем следует google.com).
Практика делает совершенным
Мы уже можем видеть из последнего примера, что регулярное выражение может очень быстро стать сложными. Многое, как любой язык, быть легко в состоянии прочитать регулярное выражение требует практики. Если у вас есть соответствующие необходимость работы с регулярными выражениями, вы находитесь в для удовольствия.
Часть 2 должно быть за счет в течение нескольких дней. Я буду делать некоторые очень косвенное “работа”, демонстрируя, как смыть DNS кэш в различных системах.