Скажем, у меня есть буфер с текстом. Я хотел бы проверить регулярное выражение (в идеале тип Perl) в моем буфере и сделать так, чтобы Emacs выделял совпадения на нем.
Например, следующее регулярное выражение ( взято из Википедии ):
(?<=\.) {2,}(?=[A-Z])
будет соответствовать следующему тексту:
Это регулярное выражение, в частности, соответствует как минимум двум пробелам, встречающимся после точки (.)
и перед заглавной буквой.
Предоставляет ли Emacs интерактивное средство сопоставления регулярных выражений для регулярных выражений Perl ?
Если ответ на последний нет:
Есть ли причина, по которой встроенная поддержка регулярных выражений Perl никогда не рассматривалась в Emacs? (учитывая, что это хорошо известный стандарт в Unix / Linux)
Как можно было бы построить один такой Perl-регулярное выражение? (возможно, вызов Perl изнутри или предварительное преобразование регулярного выражения Perl в поддерживаемый вариант?)
источник
Ответы:
Существует два замечательных пакета для эффективной работы с регулярными выражениями типа perl, которые следует использовать вместе - visual-regexp и его расширение - visual-regexp-steroids . Они являются отличным дополнением к emacs:
источник
re-builder
позволяет на лету создавать регулярные выражения в стиле emacs lisp. Я не знаю, существует ли эквивалентный пакет для создания регулярных выражений Perl в интерактивном режиме.См. Http://www.masteringemacs.org/articles/2011/04/12/re-builder-interactive-regexp-builder/ для дальнейшего обсуждения.
источник