Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将=替换为==,但忽略>;=或<;=使用正则表达式_Javascript_Regex - Fatal编程技术网

Javascript 如何将=替换为==,但忽略>;=或<;=使用正则表达式

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”) 请注意,这不会替

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


我看到正则表达式有“(?!expr)后面没有expr.”但没有“前面没有expr”。我是用JavaScript来完成这项工作的。

不幸的是,JavaScript不支持使这项工作变得容易所需的lookbehind。但是,您可以模拟它们:

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

请注意,这不会替换任何位于字符串开头或结尾的
=
,但考虑到上下文,我认为这不是一个问题。

您需要反向查找

(?<!a)b
(?

啊,我看到javascript的细节使这不起作用。你可能想在你的问题中添加javascript标签来让问题更清楚。不要忘记
+=
-=
*=
/=
^=
!=
<等等