2016-08-25 7 views
1

複数のテキストがあり、その中に特定の単語が表示されます。例えば、私はそれらの中に ".jpg"を持っている行に興味があります。私は、特定の文字を削除したいこれらの行で特定の単語を含む行の特定のタイプのすべての文字を置換する方法

I'm trying to use a lookahead: 
(?=\.jpg) 

、「_」

Sample input: 

https://somewebpage/stuff1_stuff2_stuff3.jpg 

Desired output: 

https://somewebpage/stuff1stuff2stuff3.jpg 

私は、最新のメモ帳++

私の問題のために、この正規表現を記述しようとしているの例えばすべての一致正式な先読みと正規表現を再帰的に組み合わせることができないということです。

([^_]*)(_?) 

何か助けをいただければ幸いです。

+0

ファイルの断片と予想される出力を投稿してください。 –

+0

ファイルに複数のURLがあります。質問にサンプルを掲載しました。 –

+0

これらのURLはすべて別々の行にありますか?それらの横に他のテキストはありませんか? –

答えて

1

[_-](?=.*\.jpg)私のために働いた。空の文字列で置き換えて文字を削除するか、単に検索するだけです。あなたはあなたのキャラクターリストを広げることができますが、これはあなたをカバーしていると思います。

+2

実際は、[[ _-](?=。* \。jpg) 'となります。先読みをパターンの開始位置に置くと、冗長バックトラックオーバーヘッドが発生します。 –

+0

Thanks @WiktorStribiżew、私はそれに応じて私の応答を更新しました。 –

関連する問題