0

私はこのようなテキストファイルを持っています:

(A) foo
(B) bar
(B) eggs
x spam

(A)、(B)などが優先タグです。それらは変更され、その後、prio(A)の行が上になるようにファイルがソートされます。最初のタグ(A)、最初のタグ(B)などだけをCR / LF [tag]に置き換えて、ファイルが次のようになる1行の正規表現検索と置換があるかどうか疑問に思います。 :

(A) foo

(B) bar
(B) eggs

x spam

これを行うスクリプトを作成するのは簡単です。しかし、Notepad++でマクロとして呼び出し可能な正規表現は完璧です。何かご意見は?

4

1 に答える 1

3

このような何かがそれを行う必要があります:

交換

(\([^)]*\))(.*\r\n)(?!\1)

\1\2\r\n

説明:

[^)]*ではない0個以上の文字を意味します)。-かっこで囲んだものを取得します(エスケープする
\([^)]*\)必要があります()。最初のグループに保存するために 囲まれています(取得に使用します)。-新しい行が続くもの。2番目のグループに保存するために 囲まれています(取得に使用します)。-ネガティブ先読み、同じタグを次の行に配置しないでください。)\
()\1
.*\r\n
()\2
(?!\1)

于 2013-03-15T10:47:18.433 に答える