2017-07-27 7 views
0

2つの数字の間にスペースを追加します。たとえば :notepad ++ regex変更番号にスペースを追加

11267-0-001 156465343224546543654 
11267-0-002 457328642874435765477 
11267-0-003 764987894666524352345 

は、私はあなたがすでに1つのスペースを見ることができますが、より多くのスペースを、追加したいです。 11267が消失し、\ dは+で、それはそれらを交換した後、私は...のような正規表現で "11267-\d+-\d+"を、それを試してみましたが、 "11267-\d+-\d+ "と交換したかったが、あなたが想像できるように、数字 - このような\ D +:

11267-d+-d+  156465343224546543654 
11267-d+-d+  457328642874435765477 
11267-d+-d+  764987894666524352345 

どうすればいいですか?私はメモ帳が私が示したようなパターンを探して、そのパターンを置き換えることなく、そのパターンの後にスペースや他の文字/数字/文字を追加します。

+2

キャプチャグループ '()'を使用します。 '11267 - (\ d +) - (\ d +)' – chris85

+0

のように私はそれについても読んでいます。何とかそれは仕事をしなかった(または何かが間違っていた)。私はこれを試してみました:([11267- \ d + - \ d +])そしてそれを/ 1または$ 1に置き換えましたが、どういうわけか私は間違って使っていました。 – pogos

+0

値ごとにキャプチャグループが必要です。また、 '[]'は文字クラスを作る。 – chris85

答えて

0

番号を取得して、交換用の番号を参照できるようにする必要があります。試してみてください:正規表現を学ぶ場所については

 
Find what: (11267-\d+-\d+)\s+ 
Replace with: \1[your_spaces_here]

を、最後にリソースのかなり素敵なコレクションとthis answerにおけるそれらの簡単ながあります。

+0

私を助けました。ありがとうございました。あなたは多分 "\ s +"がやっていることを説明できますか?それは好きですか? "値を見つけて何かを加えるのはやめてください"と約1は何をしているのですか? – pogos

+0

@pogos - 最初の部分 '(11267- \ d + - d +)'は(後ろに '\ 2 '、次のものが' \ 3'などと呼ばれることがあります) '\ s +'は1つ以上の空白文字を選択することを意味します。パターンは最初の部分をキャプチャし、それに続くスペースを選択し、最初のキャプチャを参照しています。あなたが望むように多くのスペース。 – zwer

関連する問題