2

次のようなデータの大規模なサブセットがあります。

MyApp.Whatever\app.config(115): More stuff here, but possibly with numbers or parenthesis...

Notepad++ を使用して、行番号 "(115):" を識別して置換し、タブ文字とそれに続く同じ番号に置換する置換フィルターを作成したいと思います。

(\(\d+\):)やなどのフィルターを試してみましたが、出力(\(\[0-9]+\):)で値全体を返し続けます。\1

(115):Notepad++ を使用して、タブ文字 +に正常に置き換えられるフィルターを作成するにはどうすればよい115ですか?

4

3 に答える 3

2

数量詞を使用してください(\(\d+?\):)。貪欲になるのを防ぎます。また、すべてが () 内にあるため、すべてをグループ化し、 \1 .. として扱います。

それが perl の場合は\((\d+?)\):、内側の部分のみに一致する必要があります。

編集:

同僚と話したところ、s/\((\d+)\)/\t\1/アプリの設定が前に必要な場合は、それを前に置くことができると彼は言いました。

于 2013-05-29T20:06:31.670 に答える
1

で置き換える(\(\d+\):)\t\1、括弧とコロンがグループ (外側の括弧) に含まれているため保持されます。「値全体を返し続ける」という意味だと思います。

これらの内側の括弧をエスケープする代わりに、他の回答が示唆するように外側の括弧をエスケープし \((\d+)\):ます。これを で置き換えると\t\1、キャプチャされたグループに含まれていなかった括弧とコロンが削除されます。

于 2013-05-29T20:17:14.140 に答える