2

Python の正規表現方言 (正しい用語ですか?) には(?<=...)、特定のパターンの前にあるものに関して検索を絞り込むために使用できるものがあります。

Emacs でこれを試して、いくつかの複雑なマルチバッファー検索を実行します。たとえば、内容が含まれているバッファーのみを検索し"x"たり、一致するバッファーの内容"y"を検索して結果をリストしたりしますが、実りはありませんでした。"foo"

(multi-occur-in-matching-buffers "." "\\(?<=:x\\|y\\)foo")

何も一致しませんでした。

Regexp Syntax Summaryには、GNU Emacs/Elisp では使用できないと記載されています。

どうすればこの問題を解決できますか?

4

1 に答える 1

2

これは、 Iciclesを使用すると簡単です。

xこれは、 と の両方に一致するすべてのバッファを簡単に選択できることを意味しますy。または、一致するものすべてが必要な場合は、xまたは一致するようにマークしたバッファーにy一致するものを追加するだけです。yx

マークされた、または「保存された」バッファーのセットがあれば、 Icicles検索またはバニラ Isearchfooを使用して、それらを検索できます。

一方、orfooと同様に一致するバッファを見つけたいだけの場合は、 を使用してください。バッファを見つけるために使用した最後のコンテンツ マッチング パターン (例: ) は、最後の Isearch regexp として自動的に保存されることにも注意してください。そのため、バッファにアクセスすると、すぐに使用して個々のオカレンスを検索できます。xyC-x bfooC-M-s

于 2014-01-01T16:32:08.317 に答える