Обсуждение:RegExp

Материал из Lurkmore

Перейти к: навигация, поиск

Не, я конечно все понимаю, но в чем таки меметичность? Обычная такая тулзень для работы, я сам когда-то подумывал сделать нечто подобное на конечных автоматах, но стало лень изобретать велосипед. Но все-таки вопрос-что оно делает здесь?

Регэксп в примере сильно простой и не передает масштаба кошерности сабжа.

/r/ регексп на полэкрана, для медитации.

ыы, сцуко, пока впиливал регексп, кто-то уже опередил. я слоупок?

кто-нибудь, запилите сюда http://xkcd.com/208/

doen.

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

прозреваю Специальную Олимпиаду. Алсо, кроме "православного" перла и похапе других языков нет чтоли?

Дорвейщики-похаписты детектед! Во-первых, петросянство. Во-вторых, хуита.

Регексп я взял с pcre.ru - не возражаю если поправят. Петросянство - мб Хуита - напиши лучше.

What about

\w@\w\.\w
Тогда уж \w([.]\w)*@\w([.]\w)+ А чё -- отловит весьма значительную часть таких нужных мейлов.
действительно почему аффтар не использует метасимвол /w ?


Цитата из статьи: "Приятная особенность всех регулярок заключается в том, что ни один даже самый профессиональный девелопер ламер[4] не может за сколь либо приемлемый срок сказать чему соответствует та или иная регулярка, глядя на нее". В то же время ваш покорный слуга (16 лет, девственник, не бородат, не программист, из языков программирования владеет только питоном на уровне "hallo world"), прочитав первый пример (с емейлами, в исправленном специалистами виде) и узнав, чему он соответствует, подумал: "Как проще искать емейлы? Емейл — это запись вида "сколькотосимволов@ещёсколькотосимволов.трисимвола". Собака и точка нашлись в примере без особых затруднений, после чего нетрудно было догадаться, что в квадратных скобках диапазоны символов (и, скажем, [a-z0-9] означает "любые символы от а до зед и от нуля до девяти). После этого, когда ваш покорный слуга дошёл до второго примера, он самостоятельно пробежал его глазами и без подсказок заметил знакомые буквы "х", "у" и набор окончаний для разных падежей. После этого "прочитать" всё выражение стало нетрудно. Скажите, что мне светит за нарушение Первого Закона Регулярок? И заодно — единственный ли я такой криптаналитик?

нет тут нарушения, там же написано что делает эта регулярка. Вот если бы ты взял какой-то рандомный паттерн и попробывал понять зачем он...
Так я-то понял до того, как прочитал объяснение. Впрочем, давайте проверим. Реквестирую рандомный паттерн (не слишком майндфачный — примерно такой же сложности, как эти примеры и, естественно, ищущий что-то осмысленное, а не фыву олдж). Посмотрим, удастся ли понять его. Bump2
^.$|^(..+)\1+$
Вполне осмысленный пример.


А как сделать регексп, который матчит строки вида a^k||b^k, то есть "aaa...aabbb...bb", где количество букв a и b одинаково?

Никак, ибо язык a^k b^k не является регулярным. Доказывается методом от обратного по лемме о накачке для регулярных языков. Надо было учить/почитать теорию автоматов и формальных языков.


Добавьте матчасти что ли. Ну там описание ДКА, НКА, их отличия.

Ассемблер

Если на ассемблере пишется программа для ОС, а не, собственно, ОС или прошивка, то можно вызывать из неё сишные функции, в том числе и для работы с регэкспами. С уважением, Кэп. - Sikon 16:44, 5 января 2015 (MSK)