在Vim中用正则匹配不含test的cell_list行的方法
在Vim中搜索不含
test的cell_list行 直接使用Vim的正则搜索命令,输入以下模式即可精准匹配目标行:
/cell_list\&^\(.*test\)\@!
模式拆解:
cell_list:匹配包含该字符串的行&:Vim正则中的逻辑与操作符,要求同时满足前后两个条件^\(.*test\)\@!:零宽负向断言,确保整行从开头到结尾都不包含test字符串(\@!表示前面的.*test模式不存在于当前行中)
使用方式:
在Vim普通模式下输入/,粘贴上述正则后按回车,即可定位到第一个符合要求的行;按n跳转到下一个匹配,N跳转到上一个匹配。
匹配验证:
针对你的示例:
-I- cell_list {{Xg1 b2a2no2_165}} {{Xg5 xf_134}} I WANT THIS
-I- cell_list {{Xg4 inv_test_150}} {{Xg5 xf_test_142}} DONT WANT THESE
该正则会匹配第一行(不含test),自动忽略第二行(含test)。
内容的提问来源于stack exchange,提问作者Alan Saldanha
相关产品推荐
相关产品推荐

