Regex 构建一个测试';为真的正则表达式=';但是对于';,这是错误的';

Regex 构建一个测试';为真的正则表达式=';但是对于';,这是错误的';,regex,Regex,我希望允许使用不等式运算符,但不允许使用特殊字符“!”靠自己 也许我可以使用两个正则表达式,/!=/和/!/。我想测试/!/如果它是单独的-并且如果它没有伴随一个等号,则输出一个错误。问题是/!/如果输入为“!=”,则测试为真。想法 输入:“!=!” 预期输出:“找到令牌”!=” 找到无效字符“!”您需要使用确保在当前位置右侧未找到某些图案: /!(?!=)/ 请参见。此处,!仅当紧跟其后没有=时才匹配 请参阅有关的详细信息。据我所知,您希望搜索一个字符!该字符后面没有字符=。听起来类似于。我

我希望允许使用不等式运算符,但不允许使用特殊字符“!”靠自己

也许我可以使用两个正则表达式,/!=/和/!/。我想测试/!/如果它是单独的-并且如果它没有伴随一个等号,则输出一个错误。问题是/!/如果输入为“!=”,则测试为真。想法

输入:“!=!”

预期输出:“找到令牌”!=”

找到无效字符“!”

您需要使用确保在当前位置右侧未找到某些图案:

/!(?!=)/
请参见。此处,
仅当紧跟其后没有
=
时才匹配


请参阅有关的详细信息。

据我所知,您希望搜索一个字符!该字符后面没有字符=。听起来类似于。我尝试了:


这里的关键字是。请参阅此处的详细信息(以及我链接的问题)。

请提及您的输入字符串和预期的输出字符串。为什么要将正则表达式用于固定值?您可以只检查是否有
!=
。如果您需要检查字符串是否有
未后跟
=/code>,是的,请使用
/!(?!=)/
regex.@Azurasky您希望这样吗?我正在使用一个正则表达式,以便在可能非常长的字符串中测试这些值是否存在。请使用
/!(?!=)/
regex。
// regex (?=!(?!\=))

!= ! // matches
foo ! bar // matches
foo != bar // doesn't match