Архив рубрики » язык «

Понедельник, 6 апреля, 2009 | Автор:

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

Regex Быстрый старт

  1. A Вертикальная черта |, иногда называют трубы, является “ИЛИ” оператор в регулярных выражениях. Это указывает на то, что картина влево или вправо приемлемо. На клавиатуре, этот ключ, как правило, “капитал”, или “сместился версию”, ключа обратной косой.
  2. Скобки круглые скобки () что выбрать раздел регулярного выражения. Они могут быть использованы так же, как в математике, когда порядок операций регулируется. The “выбор” можно ссылаться в другом месте, хотя мы рассмотрим, что спустя.
  3. A точка . это специальный символ, который соответствует любой символ, отличный “новой строки” символов.
  4. Обратная косая черта \ иногда называют побег характер. Есть много символов, таких как скобок и вертикальную полосу выше, что имеют специальное значение. Обратная косая черта используется для отнять (побег) те особые смыслы. Например, указать фактическую точку, вам нужно бежать специальный точечный характер: \.
  5. Звезда * это оператор, который означает, что предыдущий символ может повторяться ноль или более раз. Это часто сочетается с точкой производить “подстановки” шаблон, который соответствует строке любой длины: .*

Используя вертикальную полосу и управляющий символ

Здесь у нас есть ряд примеров веб-адресов:

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 кэш в различных системах.

Поделиться
Вторник, 13 января, 2009 | Автор:

(20:19:25) A: играть в WoW был в субботу
(20:19:40) В: да чувак
(20:19:44) A: Они прямо каналы, похожие на IRC, хотя ее удельный к области вы находитесь в
(20:19:52) В: лол
(20:20:01) В: вот Kewl
(20:20:05) A: парень положил в “Я могу, как носить… “
(20:20:23) A: так что я ответил “Жана брюки”
(20:20:28) В: лол
(20:20:50) A: и он ответил, “или платье”
(20:21:00) A: Я упал со стула

Поделиться