如何使用RegEx在记事本++的两个单词之间添加“_”

时间:2014-10-22 11:25:52

标签: regex notepad++

我想使用Notepadd ++替换选项和正则表达式来完成此任务:

From: IntegrationName
To: Integration_Name

怎么做呢?

我要搜索的RegEx是:.[A-Z] 这发现:“oN” 但是我不知道在替换盒中放什么,所以它只会在“o”和“N”之间添加“_”......

4 个答案:

答案 0 :(得分:1)

使用lookaround assertions的另一个解决方案是:

(?<=[a-z])(?=[A-Z])

并替换为

_

注意:&#34;匹配案例&#34;选项需要处于活动状态,否则Notepad ++会在每两个字母之间找到匹配。

这个正则表达式将找到左边是小写字母而右边是大写字母的每个位置。

答案 1 :(得分:0)

您可以使用捕获组。如果我必须采取您当前的尝试并尽可能少地编辑它,您将得到:

(.)([A-Z])

这会将.$1的匹配以及$2中的大写字母存储在一起,因此,您可以在替换输入框中使用以下内容:

$1_$2

答案 2 :(得分:0)

我知道you've accepted an answer,但是when I ran it, I got From: _Integration_Name

这是我的想法;

(:\s)(.{1})([a-z]*)([A-Z]{1})

并使用以下替换

$1$2$3_$4

enter image description here

答案 3 :(得分:0)

我终于这样做了:

Find: ([a-z])([A-Z])
Replace with: $1_$2