web-dev-qa-db-ja.com

Notepad ++(行全体ではなく)正規表現に一致するテキスト(のみ)をコピーする方法

Notepad ++のすべての「マーク」をクリップボードにコピーする簡単な方法を探しています。

ブックマークオプションを使用して、正規表現に一致する行全体をコピーできることがわかりました。しかし、マークされたテキスト(または正規表現に一致するテキスト)のみをコピーする方法を探しています。

理想は、改行(またはカスタム区切り文字)で区切られた出力を貼り付けることです。

運が悪かったのでTxtFXオプションを調べました。プラグイン/ Pythonスクリプトライブラリを調べましたが、マークされたテキストをクリップボードにコピーできるコードはありますか?

簡単に言えば、notepad ++を使用して(ワンショットで)それを作成する方法はありますか?

(SynWriteを使用して(「文字列を抽出」コマンドを使用して)それを実行できることを確認しましたが、notepad ++を使用した方がよいでしょう)。

4
JinSnow

また、マークされたすべての一致を選択してコピーする方法も見つかりませんでした。私はかなり初心者のNP ++ユーザーですが、他の誰かがこれを行う方法を知っているかもしれません。

ただし、代わりに、コピーしたくないものをすべて検索して、何も置き換えないようにすることもできます。これにより、必要なものだけが残るので、コピーしたり、好きなように使用したりできます。次に、元のデータをそのまま維持するために、必ず元に戻すか、結果を新しいファイルとして保存するか、まったく保存しないでください。

あなたのコメントに基づいて、あなたはいくつかのテキストからハッシュタグを取得しようとしています。次の正規表現パターンを使用して、ハッシュタグ以外のすべてに一致させることができます。

(?<!#)\b[^#]+

すべてを何もまたはスペースに置き換えます。

パターンの説明:

\b[^#]+単語の境界から始まり、ポンド記号を含まないテキストに最大限に一致します。
(?<!#)は、ポンド記号のネガティブな後読みです。これにより、直前にポンド記号が付いたテキストが一致しなくなります。

これはハッシュタグだけを残すはずです。 [^#]+も改行文字と一致しているように見えるので、これによりすべてのハッシュタグが1行に残ります。

2
Excellll