在 VSCode 中,尝试搜索print(
and print (
- 但前提是后面没有#
这是我第一次尝试在 VSCode 中进行正则表达式搜索...
例子:
print ('Test One')
- MATCH
print( 'Test Two')
- MATCH
#print('Test Fee')
- 已跳过
我的理解是从这个问题 https://stackoverflow.com/questions/49146620/negative-lookaround-alternative-vscode-ripgrepVSCode 缺乏负向回顾。
通常情况下,在^F
(搜索功能)我会使用类似的东西(未经测试):
/w*(?<!#)print
但我收到正则表达式无效的错误。
任何人都可以建议一个解决方法 - 或者我只是对正则表达式进行了粗手操作?
更新说明:从 VS Code 1.31 开始,支持无限宽度lookbehind https://stackoverflow.com/a/57868396/3832970.
但是,在当前场景中,您不必使用基于lookbehind的解决方案,您可以使用
^\s*print\s*\(
See the 正则表达式演示 https://regex101.com/r/cMM5QU/2
请注意,如果您只想匹配同一行上的文本,则替换可能是更好的主意\s
with [ \t]
, or [^\S\n]
.
Details
-
^
- 一行的开头
-
\s*
- 0+ 空格
-
print
- 文字子串
-
\s*
- 0+ 空格
-
\(
- a (
char(必须转义以匹配文字(
).
NOTE实际上 VSCode 仍然支持前瞻,但你需要启用search.usePCRE2 option https://stackoverflow.com/a/52150634/3832970.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)