我需要在不以:
,{
,}
或)
结尾的每一行的末尾添加; 。
我正在Notepad ++中使用它:
[^:\{\}\)]$
\1;
它会找到所有正确的字符串,但是会用;
代替在行尾之前找到的最后一个字符,而不是将其添加到字符串中。我尝试使用$1
而不是\1
,但是它没有任何改变-找到的文本仍然被删除。
答案 0 :(得分:4)
您的模式没有捕获组,因此\1
是一个空字符串。使用$0
代替引用整个匹配项:
查找内容:[^:{})]$
替换为:$0;
但是,它在某些情况下可能会失败([^:{})]$
模式与:
,{
,}
和)
以外的任何字符都匹配,因此在行尾之前至少需要1个字符),也许,您最好在此处使用负数:
查找内容:$(?<![:{})])
替换为:;
$(?<![:{})])
模式与行尾(带有$
)匹配,然后(?<![:{})])
的负向后查找确保没有:
,{
,}
或)
紧接在当前位置的左侧。