为什么 `f(?=\=)` 在 VSCode 中无效的正则表达式?

Why is `f(?=\=)` invailid regex in VSCode?

在 VSCode 中,如果我在正则表达式查找和替换中使用 f(?=\=),我会收到一条错误消息:

Invalid regular expression: /f(?=\=)/: Invalid escape

然而,如果我这样做 f(?==) 它工作正常。我没有看到第一个正则表达式有任何问题,它只是将文字 = 符号指定为正前瞻。为什么你不能逃避一个 = 标志?

在您的正则表达式中,(?= 开始正向前瞻,但您的第二个 = 是匹配的部分,而不是该特定语法的一部分。所以斜杠被解释为转义,转义的 = 符号无效。