如何在Regex101或Notepad++中标记匹配字符串的最后一个字符
正则匹配替换:为独立成行的
}前添加指定内容 需求描述
需要在Regex101或Notepad++中,针对独立成行、前面带有空格的},在其紧邻位置前插入SEND(即把 }这类内容替换为 SEND})。
输入示例
[]*}+%>++~€_€<]%,!!_€~ “ABC/A1/YY-“+abc1 } !£|€_€{^}?![+}|!¥] “ABC/A2/YY-“+abc2 } 18,&4&5&4&&1$&((&&1 “ABC/A3/YY-“+abc7 }
期望输出
[]*}+%>++~€_€<]%,!!_€~ “ABC/A1/YY-“+abc1 SEND} !£|€_€{^}?![+}|!¥] “ABC/A2/YY-“+abc2 SEND} 18,&4&5&4&&1$&((&&1 “ABC/A3/YY-“+abc7 SEND}
解决方案
正则表达式(匹配规则)
^(\s+)}$
- 规则解释:
^:匹配行的起始位置(\s+):捕获一个或多个前导空格,作为分组1}$:匹配行尾的}
替换内容
$1SEND}
- 替换逻辑:通过
$1引用捕获到的所有前导空格,拼接SEND和},实现保留原空格并在}前插入指定内容的效果。
工具使用说明
- Notepad++:切换到「替换」功能,勾选「正则表达式」模式(默认无需勾选「匹配换行符」),输入上述正则和替换内容即可执行替换。
- Regex101:选择PCRE2引擎(默认选项),直接填入匹配规则和替换内容即可预览效果。
内容的提问来源于stack exchange,提问作者Clint Mohamed
相关产品推荐
相关产品推荐

