LINUX.ORG.RU

прошу посоветовать тулзу для работы с регулярными выражениями


0

1

итак, постановка вопроса - поиск хорошего софта для работы с регулярными выражениями. вот надыбал две штуки - одна только для работы через браузер http://www.gskinner.com/RegExr/ (надо флеш), другая - плагин для еклипса http://myregexp.com/eclipsePlugin.html

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

Рекомендую мозг.

anonymous
()

В емаксе есть `M-x re-builder`. Но я сам не пользуюсь, так что не знаю что к чему.

dmsh
()
Ответ на: комментарий от shty

и я его юзал под винду, не знаю что там с другими платформами :)

shty ★★★★★
()

> плагин для еклипса очень близок к идеалу, если бы не одно но - иногда по непонятным причинам намертво зависает, например если текст большой и паттерн неправильный.

Это не «зависает», это в конечном автомате, представляемом регулярным выражением, слишком большое число состояний. Известно, что проверка _некоторых_ регулярных выражений, особенно содержащих *, () и | в различных комбинациях _может_ занимать экспоненциально большое время

annoynimous ★★★★★
()
Ответ на: комментарий от shty

спасибо, выглядит многообещающе. обязательно попробую.

Voviandr
() автор топика
Ответ на: комментарий от annoynimous

Экспоненциальное время может потребоваться вовсе не по этим причинам(И в _автомате_ уж точно оно не потребуется). А по причинам нерегулярности(в плане грамматики. бэкреференсы и т.п. http://lionet.livejournal.com/68807.html) перлоподобных регексов.

Love5an
()
Ответ на: комментарий от Voviandr

>это библиотека, а мне надо готовое для работы решение.

sed

Led ★★★☆☆
()
Ответ на: комментарий от Love5an

As far as the theoretical term is concerned, regular expressions with backreferences are not regular expressions. The power that backreferences add comes at great cost: in the worst case, the best known implementations require exponential search algorithms, like the one Perl uses. Perl (and the other languages) could not now remove backreference support, of course, but they could employ much faster algorithms when presented with regular expressions that don't have backreferences

Я собственно об этом говорил. Вроде бы большинство реализаций регулярных выражений имеют поддержку обратных ссылок (хотя они не всегда используются при поиске)

annoynimous ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.