Я допускаю значительную предвзятость в отношении того, что PCRE регулярные выражения намного лучше, чем emacs, если нет другой причины, по которой, когда я набираю '(' Я в значительной степени всегда нужен оператор группировки. И, конечно же, \ w и подобные им НАСТОЛЬКО удобнее, чем другие эквиваленты.
Но было бы безумием ожидать изменения внутреннего устройства emacs, конечно. Но это должно быть возможно я бы подумал, чтобы преобразовать из эксперимента PCRE в выражение emacs, и сделаю все необходимые преобразования, чтобы я мог написать:
(defun my-super-regexp-function ...
(search-forward (pcre-convert "__\\w: \d+")))
(или подобное).
Кто-нибудь знает библиотеку elisp, которая может это сделать?
Редактировать: Выбор ответа из ответов ниже ...
Вау, я люблю возвращаться после 4 дней отпуска, чтобы найти множество интересных ответов s, чтобы разобраться! Мне нравится работа над решениями обоих типов.
В конце концов, похоже, что обе версии решений exec-a-script и прямо elisp будут работать, но с точки зрения чистой скорости и «правильности», версия elisp, безусловно, является той, которую люди предпочли бы ( я включил).