Notepad ++のRegexを介してすべての数字に文字を追加する


10

私は非常に基本的な質問がありますが、頭を動かすことはできません。私はこのようなテキスト文書を持っています:

This is 5 a test!
This 3 is a test!
This is a 9 test!

そして私はそれがこのように見えることを望みます:

This is 5c a test!
This 3c is a test!
This is a 9c test!

私が見つけたすべての数に「c」を追加したいことを意味します。私はこれを試しました:

Find what: [0-9]+]
Replace with: $1c
Search Mode: Regular expression

それが機能していないので、私は明らかに何かが間違っています。助けていただければ幸いです。ありがとうございました!


3
好奇心から抜け出して:なぜあなた[0-9]+]はそれらの奇妙で一致しない括弧で試したのですか?
ハインツィ

2
@Heinziは、の近接与えられ、それは問題のタイプミスだ賭け+]そしてEnter多くのキーボードで。
オービットのライトネスレース

回答:


26

ほぼ正解です。

あなたは、検索する([0-9]+)
としているに置き換えます$1c

( )キャプチャグループの作成に使用するため、$ 1が機能します。

または、$0c代わりにを使用して、キャプチャグループを使用する必要はありません。


2
それは完全に正常に動作します。どうもありがとう;)
user3877230

そのパターンに違いがあるかどうか知りたいだけで探してい\d+ますか?
BruceWayne

2
@BruceWayne正規表現の風味に応じて、他のスクリプトの\d Unicode数字照合できます。これはPCREには当てはまらないことに注意してください。これはNotepad ++が明らかに使用しているものです。いずれにせよ、私は通常\d、数字[0-9]を使いたいが、明示的にそれらの文字を使いたい場合(たとえば、ASCII文字に限定されている定義済みの形式を取得する場合)を優先します。
ボブ

実際、\ dも同様に機能します。[0-9]構文はそのままにしてあります。OPが既にそれを試しているためです。他の回答では\ dを使用しています。
LPChip 2018年

13
  • Ctrl+H
  • 何を見つける: \d+
  • と置換する: $0c
  • ラップアラウンドをチェック
  • 正規表現をチェック
  • Replace all

与えられた例の結果:

This is 5c a test!
This 3c is a test!
This is a 9c test!

ラップアラウンドは何をしますか?
Ooker 2018年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.