New*_*ria 5 regex sublimetext3
我有这个正则表达式
^\([^\t]*\)\t\([^\t]*\)\t\([^\t]*\)$
Run Code Online (Sandbox Code Playgroud)
这应该匹配
但在Sublime中它不会匹配.为什么?
Vim正则表达式非常具体,与Sublime Text 3使用的PCRE正则表达式引擎表达式语法不同.
在Sublime Text 3中,您可以将您在Vim中使用的模式编写为
^([^\t\r\n]*)\t([^\t\r\n]*)\t([^\t\r\n]*)$
Run Code Online (Sandbox Code Playgroud)
请参阅正则表达式演示
简而言之,(...)应该用来形成一个捕获组,并且你需要添加\r\n以禁止一个否定的字符类来匹配跨行(在Vim中,[^.]*不会与换行符匹配,但它会在Sublime Text 3中).
请注意,(...)(而不是\(...\))也可以在Vim中用作捕获组,但是您需要使用非常神奇的模式来使用该语法.