RegEx选择匹配的一部分

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (39)

我正在使用gvim编辑文档。该文件的摘录如下:

ST*123*foo
WIL*ST*bar
Z91*R*Station

使用正则表达式,我想ST在第二行中选择它存在于两个之间*(并且不在一行的开头),所以我可以突出显示一个特定的颜色。

我认为\*ST\*可能有用,但它会选择*我不想要的s。我也试过(无济于事){}尝试从我的选择中选择x个字符的一些变体。

提问于
用户回答回答于

您将需要使用前瞻和后观断言:

/\v(\*)@<=ST(\*)@=

细节:

  • \v:非常神奇,以避免过度逃避
  • (\*)@<=:Lookbehind断言我们*落后了
  • ST:匹配ST
  • (\*)@=:预见断言我们已经*领先了

扫码关注云+社区

领取腾讯云代金券