Javascript 如何使用正则表达式查找字符串中的逻辑运算符?
假设逻辑表达式如下所示:Javascript 如何使用正则表达式查找字符串中的逻辑运算符?,javascript,regex,Javascript,Regex,假设逻辑表达式如下所示: (A || B) && (C | D) /AND|OR|and|or|XOR|&&|<=|<|>|>=|!=|==|&|OR*|!|\/[|]\/|\/(|)*\//gi 我想编写一个正则表达式,在表达式中搜索|和|字符 这是我目前用来查找大多数其他逻辑运算符的正则表达式: /AND|OR|and|or|XOR|&&|<=|<|>|>=|!=|==|&|O
(A || B) && (C | D)
/AND|OR|and|or|XOR|&&|<=|<|>|>=|!=|==|&|OR*|!|\/[|]\/|\/(|)*\//gi
我想编写一个正则表达式,在表达式中搜索|
和|
字符
这是我目前用来查找大多数其他逻辑运算符的正则表达式:
/AND|OR|and|or|XOR|&&|<=|<|>|>=|!=|==|&|OR*|!/gi
但它与我的逻辑表达式不匹配。试试这个:
AND|OR|and|or|XOR|&&|<=|<|>|>=|!=|==|&|OR*|!|[||]{2}|\|
和|或|和|或|异或&&&&&=|=|==|&|或者*||[||]{2}|\|
您还可以在这里测试这些正则表达式:您可以在您的正则表达式中添加一个类似
\\\\\\{1,2}
的替代分支:
/AND|OR|and|or|XOR|&&|<=|>=|<|>|!=|==|&|OR*|!|\|{1,2}/gi
看另一个。请注意,这些单词可能只需要作为整个单词进行匹配,然后您需要
/\b(?:and | x?或)\b&&&&&[!=]={1,2}/gi
尝试/和|或|和|或|异或&&&&=|==|&|或者*||\|{1,2}/gi
与以下字符不匹配:S?请显示代码,其他地方一定有问题。只需加上\\\\\\\\\\\\\\\\
即可done@WiktorStribiżew在同一个在线工具上进行扩展后留下了一些空白,所以它无法找到mathc。。作品,谢谢:)你应该读。@WiktorStribiżew谢谢。我已经更新了代码。由于RegEx很热心,我们应该首先查找| |,然后尝试查找|。我说的对吗?是的,我只是不想用“regex是渴望的”这个词。它只是一个“渴望”的未编排的备选组,它不在乎匹配NFA正则表达式中最长的备选组。请注意,在字符类中,一个|
就足够了,[||]{2}
=[|]{2}
。在上面的正则表达式或*中,o和ORRRR都有效,我认为它是错误的,或者应该是=>或
/and|x?or|&&|[<>!=]=|[<>&!]|\|{1,2}/gi