升华正则表达式以匹配wx.data.xxx但不匹配wx.data.yyy

时间:2019-08-26 08:42:45

标签: regex sublimetext3

我想找到

的所有实例

wx.data.xxx

但不是

wx.data.updatewx.data.get

我尝试了(wx.data.)[^update][^get],但是没有用。

2 个答案:

答案 0 :(得分:0)

使用否定的前瞻而不是否定的字符集:

wx\.data\.(?!update|get)[^.\n]+

https://regex101.com/r/chy79T/1

答案 1 :(得分:0)

您可以使用(?! negative lookahead断言右边没有获取或更新。

\S+匹配非空格字符的1+倍。如果您也不想同时匹配点和空格,则可以使用[^.\s]+

\bwx\.data\.(?!get|update)\S+

Regex demo

例如,如果允许更新或获取,则可以添加单词边界\b

\bwx\.data\.(?!(?:get|update)\b)\S+