查找所有数学运算的正则表达式

Regular expression to find all math operations

我有这样的表达方式:

5*3 + 2 +7 -sqrt(32312.323)

我想找到该表达式中的所有数学运算。我试过:

[A-Za-z\*\+\-\/]

因为“-”在 "sqrt" 操作旁边,所以它合并为“-sqrt”,我希望在这种情况下将它们分开?我该如何解决这个问题?

提前致谢!

[*+\/-]+|[A-Za-z]+

这行得通。根据@CertainPerformance 的表现应该没问题。问题总是出现在交替的多个分支以匹配相同内容开始时(例如 a*|aa*)。你的两个分支不可能都匹配同一个字符,所以这和正则表达式一样好。

另外,感谢@revo 的回答。