如何用Notepad++正则表达式匹配含=后接换行/A/B/C的行?
Notepad++正则匹配特定格式的行
核心正则表达式
直接使用以下表达式即可满足需求:
^.*=(?:[ABC]|\R)$
表达式拆解
^:锚定当前行的开头.*:匹配等号前的任意长度字符(包括0个字符)=:精确匹配等号本身(?:[ABC]|\R):非捕获组,限定等号后的允许内容:[ABC]:匹配A、B、C中的任意单个字符\R:匹配任意类型的换行符(兼容Windows的CRLF、Linux的LF、旧Mac的CR)
$:锚定当前行的结尾
Notepad++操作步骤
- 打开搜索对话框(快捷键
Ctrl+F) - 切换到「正则表达式」模式
- 将上述正则表达式粘贴到搜索框
- 点击「查找全部」即可列出所有符合条件的行
匹配验证
- 符合匹配条件的行:
They're Coming=(等号后紧跟换行)Pipeline=A(等号后紧跟A)System=B、Config=C(同理匹配B/C)
- 会被排除的行:
#https://www.youtube.com/watch?v=eQNI1KfGXBA(等号后是e,不在允许范围内)Name=D(等号后是D,不在A/B/C里)
可选调整(按需使用)
如果需要允许等号与目标字符/换行之间存在空白字符(空格、制表符等),可修改为:
^.*=\s*(?:[ABC]|\R)$
其中\s*会匹配0个或多个空白字符。
内容的提问来源于stack exchange,提问作者Rob
相关产品推荐
相关产品推荐

