1

我试图弄清楚如何使用正则表达式在 Notepad++ 上进行查找和替换,我所拥有的是一堆具有以下格式的行

1 ; 2 ; 3 ; 4 ; AA ; AA BB
5 ; 6 ; 7 ; 8 ; AA ; BB CC
2 ; 4 ; 6 ; 0 ; AA ; DD EE

我想做的是在最后一节的每个实例之间添加一个分号,如下所示:

1 ; 2 ; 3 ; 4 ; AA ; AA ; BB
5 ; 6 ; 7 ; 8 ; AA ; BB ; CC
2 ; 4 ; 6 ; 0 ; AA ; DD ; EE

有任何想法吗?

谢谢!

4

4 回答 4

2
Find what: ([A-Z]+)\s+([A-Z]+)$
Replace with: $1 ; $2
于 2013-09-13T18:49:25.627 回答
1
Search for: (\w+)\s+(\w+)$
Replace with: \1 ; \2
于 2013-09-13T18:50:02.640 回答
1

在 find 中尝试这个正则表达式:

 (\S+)$

(读作“空格”,然后是字符(\S+)$

而这个替换:

 ; $1

(读作“空格”、分号、“空格”和“美元1”)

确保您选中了“正则表达式”并且未选中“.matches newline”!

\S匹配非空格(非换行符,非回车返回非换页符),$1在这种情况下,括号将匹配项存储在变量中。

$匹配行尾。

在替换中,我们放置空格、分号、空格,然后是我们之前存储的内容$1

于 2013-09-13T18:50:08.130 回答
0

所以这是用空格匹配最后两个字符的正则表达式:

(\s\w\w)$

请记住在您的正则表达式中添加多行标志。

用 替换匹配的元素; $1。第一个捕获组保留 1 美元。

演示:regexr.com

于 2013-09-13T18:49:55.700 回答