记事本++正则表达式
Notepad ++ Regular Expressions
记事本++替换多个单词
好的,这就是我需要知道的,目前我正在一次搜索多个单词,这里是一些示例数据
(\bACCESS\b)|(\bAccs\b)|(\bALLEY\b)|(\bAlly\b)|(\bALLEYWAY\b)
我想做的是在找到的每个单词的末尾添加一个“:”。像这样
41 dwadadad Rd:
93 awdawdadawd Terrace:
4/100 awdadawdwad St:
32 awdawdawdawd Ave:
59 awdawdawd Street: Ferny Grove
是否有只获取匹配词结尾的正则表达式?
您只需将正则表达式更改为:
((\bACCESS\b)|(\bAccs\b)|(\bALLEY\b)|(\bAlly\b)|(\bALLEYWAY\b))
然后替换为::
我建议使用只有两个单词边界的交替列表 - 在模式的开头和结尾,并且只有一组:
\b(?:Rd|Terrace|St|Ave|Street)\b
并替换为 [=11=]:
(其中 [=12=]
backreference 引用整个匹配项,如果模式匹配 Rd
,则 Rd
将被插入结果字符串)。
请注意,我们可以使用 2 \b
只是因为它们包含交替非捕获组 (?:...)
,因此应用于每个替代方案。它缩短了正则表达式并加快了速度。
记事本++替换多个单词
好的,这就是我需要知道的,目前我正在一次搜索多个单词,这里是一些示例数据
(\bACCESS\b)|(\bAccs\b)|(\bALLEY\b)|(\bAlly\b)|(\bALLEYWAY\b)
我想做的是在找到的每个单词的末尾添加一个“:”。像这样
41 dwadadad Rd:
93 awdawdadawd Terrace:
4/100 awdadawdwad St:
32 awdawdawdawd Ave:
59 awdawdawd Street: Ferny Grove
是否有只获取匹配词结尾的正则表达式?
您只需将正则表达式更改为:
((\bACCESS\b)|(\bAccs\b)|(\bALLEY\b)|(\bAlly\b)|(\bALLEYWAY\b))
然后替换为::
我建议使用只有两个单词边界的交替列表 - 在模式的开头和结尾,并且只有一组:
\b(?:Rd|Terrace|St|Ave|Street)\b
并替换为 [=11=]:
(其中 [=12=]
backreference 引用整个匹配项,如果模式匹配 Rd
,则 Rd
将被插入结果字符串)。
请注意,我们可以使用 2 \b
只是因为它们包含交替非捕获组 (?:...)
,因此应用于每个替代方案。它缩短了正则表达式并加快了速度。