我无法弄清楚为什么正则表达式在替换时的行为方式。请考虑以下列表:
ABC
CBA
DDD
JKL
我想替换每个条目,以便得到以下结果:
ABC,CBA,DDD,JKL
我使用Notepad ++使用以下内容进行匹配:
(.*)\r\n
在替换中使用了这个:
($1),
这导致了期望的结果。
然而我最初的想法是我可以使用这个匹配:
^(.*)\r\n
但是:这导致了
ABC,CBA
DDD,JKL
我无法弄清楚为什么它不会那样工作并导致那种奇怪的结果。我错过了什么? 为什么^(。*)\ r \ n错误?
答案 0 :(得分:2)
记事本尝试匹配第一行的正则表达式。它找到一个匹配并根据需要替换。你的新州是:
ABC,CBA
DDD
JKL
现在查看下一行,现在是DDD
并在那里执行替换。
现在是:
ABC,CBA
DDD,JKL
因此,你的替换正在移动线条的事实可能会混淆你的编辑器的正则表达式逻辑。
如果你现在再次执行相同的正则表达式替换,这将导致你想要的结果。
答案 1 :(得分:1)
答案 2 :(得分:0)
尝试使用以下正则表达式:
[\r\n]+$
并将其替换为,
答案 3 :(得分:0)