Javascript 如何将=替换为==,但忽略>;=或<;=使用正则表达式
在像a=b这样的字符串中,我需要用==(a==b)替换等号。但是我不想替换a=b中的等式Javascript 如何将=替换为==,但忽略>;=或<;=使用正则表达式,javascript,regex,Javascript,Regex,在像a=b这样的字符串中,我需要用==(a==b)替换等号。但是我不想替换a=b中的等式 我看到正则表达式有“(?!expr)后面没有expr.”但没有“前面没有expr”。我是用JavaScript来完成这项工作的。不幸的是,JavaScript不支持使这项工作变得容易所需的lookbehind。但是,您可以模拟它们: .replace(/([^<>])=([^=])/g,"$1==$2") .replace(/([^])=([^=])/g,“$1==$2”) 请注意,这不会替
我看到正则表达式有“(?!expr)后面没有expr.”但没有“前面没有expr”。我是用JavaScript来完成这项工作的。不幸的是,JavaScript不支持使这项工作变得容易所需的lookbehind。但是,您可以模拟它们:
.replace(/([^<>])=([^=])/g,"$1==$2")
.replace(/([^])=([^=])/g,“$1==$2”)
请注意,这不会替换任何位于字符串开头或结尾的
=
,但考虑到上下文,我认为这不是一个问题。您需要反向查找
(?<!a)b
(?
啊,我看到javascript的细节使这不起作用。你可能想在你的问题中添加javascript标签来让问题更清楚。不要忘记+=
-=
*=
/=
^=
!=
<等等