回答:
Notepad ++で置換するには、Ctrl+ Hを押して[置換]メニューを開きます。
次に、[正規表現]ボタンをオンにして、一致するパターンの一部を使用する場合は、[キャプチャグループ]を使用する必要があります(googleで詳細をご覧ください)。たとえば、次の各行を照合するとします。
value="4"
value="403"
value="200"
value="201"
value="116"
value="15"
.*"\d+"
パターンを使用して、番号のみを保持したい。その後、括弧を使用して、あなたのマッチングパターンでキャプチャグループを使用することができます(
し、)
そのように、: .*"(\d+)"
。したがって、置換で、次のように簡単に書くことができます$1
。$ 1は、最初のキャプチャグループの値を参照し、成功した各一致の数を返します。あなたは2つのキャプチャグループを持っていた場合、例えば(.*)="(\d+)"
、$1
文字列を返しますvalue
し、$2
番号を返します。
したがって、次のように使用します。
検索: .*"(\d+)"
交換: $1
それはあなたを返します
4
403
200
201
116
15
前述のパターンに一致させるには、多くの代替的でより良い方法があることに注意してください。たとえば、パターンvalue="([0-9]+)"
はより具体的であり、これらの行にのみ一致することが確実になるため、パターンの方が優れています。キャプチャグループを使用せずに置換することも可能ですが、これは少し高度なトピックなので、ここではそのままにしておきます。
$1
、私にはうまくいきませんでした。\1
代わりに使用しましたが、うまくいきました。
\1
Notepad ++のすべてのバージョンで動作します。 $1
新しいものでのみ動作します。
Hex Editor
プラグインでは機能しないと思います。16進表示モードでは、Notepad ++はRegular Expression
検索/置換のオプションを表示しません。テキストビューモードではRegular Expression
、検索/置換のオプションが表示されます。現在、Notepad ++バージョン6.9.2を使用しています。これは現在のバージョンです。
psxlsは素晴らしい答えを出しましたが、私のNotepad ++バージョンは少し異なると思いますので、$(ドル記号)のキャプチャは機能しませんでした。
私はNotepad ++ v.5.9.3を持っていますが、これがタスクを実行する方法です。
次のパターンを検索します:value = \ "([0-9] *)\" そして次のように置き換えます:\ 1(そのキャプチャグループの周りに何をしたいか)
例 角括弧で囲む
[\ 1]-> はvalue = "[4]"を生成します
\1
番号を保持するのに役立ちましたが、その背後にある引用を削除しました。のようなドキュメントに約7400行ありましたtablename.columnname = '12345'
。最初の引用は簡単に削除でき、2番目の引用は\1
置換テキストボックスのを使用して行われました。よろしく
検索: value="([\d]+|[\d])"
交換: \1
それは本当にあなたを返します
4
403
200
201
116
15
js:
a='value="4"\nvalue="403"\nvalue="200"\nvalue="201"\nvalue="116"\nvalue="15"';
a = a.replace(/value="([\d]+|[\d])"/g, '$1');
console.log(a);