我需要在每一行的结尾添加;,但排除以:
、{
、}
或)
结尾的行。
我在Notepad++中使用以下方法:
- 查找:
[^:\{\}\)]$
- 替换为:
\1;
它可以找到字符串,但是用;
替换最后一个字符,而不是在其后添加;
。我试过使用$1
代替\1
,但仍然无法解决问题:找到的文本仍然被删除。
\1
是一个空字符串。使用$0
来引用整个匹配:
查找:[^:{})]$
替换为:$0;
然而,在一些特殊情况下可能会失败([^:{})]$
模式匹配除:
、{
、}
和)
之外的任何字符,因此需要至少一个字符在行尾之前),或许你最好在这里使用负回顾后断言:
查找:$(?<![:{})])
替换为:;
$(?<![:{})])
模式匹配行尾(使用$
),然后(?<![:{})])
负回顾后断言确保当前位置左侧没有:
、{
、}
或)
。