0

在像 a=b 这样的字符串中,我需要用 == (a==b) 替换等号。但是我不想替换 a<=b 或 a>=b 中的等号。

我看到正则表达式有“(?!expr)后面没有expr。” 但不是“前面没有 expr”。我在 JavaScript 中这样做。

4

2 回答 2

2

不幸的是,JavaScript 不支持使这项工作轻松进行所需的后视。但是,您可以模拟它们:

.replace(/([^<>])=([^=])/g,"$1==$2")

请注意,这不会替换=字符串开头或结尾的任何内容,但鉴于上下文,我认为这不是问题。

于 2013-02-16T06:05:07.543 回答
0

你想要负后视。

(?<!a)b

http://www.regular-expressions.info/lookaround.html

于 2013-02-16T06:05:32.390 回答