2017-06-15 75 views
1

有人可以幫我修復這個notepad ++正則表達式,以便用空格替換文本\N嗎?用正則表達式替換「 N」

((?=.*?,Default)[^\r\n]*)(\N) 

我期待以取代只在有它,Default行文本\N的所有實例。

+0

什麼也沒有發生\ r \ N'與空格代替它呢? –

+0

你是什麼意思? 當我搜索「\ r \ n」時,它發現一行的結尾。 – Tyler

+0

'\ N'必須在',Default'之後還是隻在同一行出現?請參見[',默認。* \ K \\ N'](https://regex101.com/r/ZXTI8s/1),並且['^(?=。*,默認)。* \ K \\ N'](https://regex101.com/r/bpX6QQ/1)作爲第二種情況。 –

回答

1

我建議

(?:\G(?!^)|^(?=.*,Default)).*?\K\\N 

regex demo

詳細

  • (?:\G(?!^)|^(?=.*,Default)) - 包含,Default子(^(?=.*,Default))或以前的成功匹配(\G(?!^)年底,作爲\G串/行的開始相匹配的線位置的開始,其位置必須減去負向預測)
  • .*? - 除換行符字符以外的任何0+字符,儘可能少
  • \K - 匹配重置運算符
  • \\N - 文字\N子字符串。

在記事本++測試:

\NSome text,Default\Nand more here\N 
\Ntext \N text ,Default 
New line \N\N\N 

成爲當你發現` enter image description here

+0

更換可能是任何你喜歡的,我用了一個空間。 –

+0

@Tyler:很高興爲你工作。請考慮接受答案(請參閱[如何接受SO答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)),並且如果我的答案證明對我有幫助,你(見[如何在堆棧溢出?](http://meta.stackexchange.com/questions/173399/how-to-upvote-on-stack-overflow))。 –

+0

跟進問題 是否可以修改搜索以在\ N之前或之後包含空格? 例如「\ N」或「\ N」 – Tyler