【发布时间】:2014-07-01 07:05:33
【问题描述】:
我需要帮助来构建一个接受基本算术运算算法的regular expression,但也允许meter operations 在任意数量的括号中
到目前为止,我有这样的表达方式:
^([(]*(-)?\d+(\.\d+)?[)]?)([(]?[-+/*%^]?\d+(\.\d+)?[)]*)+
碰巧上面的表达式在没有右括号或未打开的情况下接受了我(括号必须成对出现)。 我出示了我做的证据,红框中的不应该接受 http://regexr.com/38r4u
希望你能帮助我,
谢谢。
【问题讨论】:
-
你的正则表达式实现是什么? PHP、JavaScript、.NET、...
-
正则表达式实现 .NET (C#)
-
那你可以尝试使用平衡组(msdn.microsoft.com/en-us/library/…),哪种实现递归。
标签: regex expression parentheses