Perlの正規表現をインタラクティブにテストおよび使用するにはどうすればよいですか?


15

テキスト付きのバッファがあるとします。バッファーに対して正規表現(理想的にはPerlタイプ)をテストし、Emacsにその一致を強調表示させたいと思います。

たとえば、次の正規表現(ウィキペディアから取得):

(?<=\.) {2,}(?=[A-Z]) 

次のテキストで次のように一致します。

                    ここに画像の説明を入力してください

この正規表現は、特に、ピリオドの後(.)、大文字の前にある少なくとも2つのスペースに一致します。

Emacs はPerlの正規表現用のインタラクティブな正規表現マッチャーを提供しますか?

後者の答えがノーの場合:

  1. Perlの正規表現のネイティブサポートがEmacsで(一度も)考慮されなかった理由はありますか?(Unix / Linuxでよく知られている標準であることを考慮して)

  2. このようなPerl正規表現マッチャーの構築をどのように進めることができますか?(おそらく、Perlを内部で呼び出すか、Perlの正規表現をサポートされているバリアントに事前に変換しますか?)


2
Emacsの正規表現は、Perlよりもしばらく前に作成されており、下位互換性の理由で変更されていないと想定しています。
shosti 14

1
また、github.com / joddie / pcre2elをチェックアウトすることもできます(使用していませんので、保証できません)。
shosti

回答:


15

perl種類の正規表現を効果的に使用するには、visual-regexpとその拡張機能であるvisual-regexp-steroidsを一緒に使用する必要があります。それらはemacsへの素晴らしい追加です:

ここに画像の説明を入力してください


2
明確にするために、visual-regexpはemacs regexpを使用し、ステロイドバージョンはPCREまたはPython正規表現をバックエンドとして使用できます。
カウシャルモディ14年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.