【问题标题】:Smart math regular expression智能数学正则表达式
【发布时间】:2014-03-17 04:12:40
【问题描述】:

我知道那里有聪明的人。目前,我想使用一个最优雅的正则表达式来分隔数字,以实现一些非常简单的数学计算。

它需要支持一些模糊数字猜测,例如:

1+.2 应该等于 1 + 0.2

.1-.2 应该等于 0.1 - 0.2

-.2+-100.2 应该等于 -0.2 - 100.2

Here is a quick demo I made up for you to play around @987654321@

是否有可能在一个优雅的正则表达式中实现这些逻辑?

谢谢。

【问题讨论】:

标签: javascript regex performance math knockout.js


【解决方案1】:

我明白了。对我来说,正则表达式的好习惯。还要感谢您向我展示 jsfiddle。从未见过这样的 b4。


reg1 : ^[\-\d{1,}|\-*\.*\d*+]{1,}
reg2 (g) : \.{2}
reg3 (g) : ^(([\-]{0,})(\d*\.*\d*)?)|([\+\-\*\/]{1,})|((\d*)+(\.*\d*)?)

---
2-1  :  2 | - | 1
.1+.2  :  0.1 | + | 0.2
.2+1  :  0.2 | + | 1
-1-1.3  :  -1 | - | 1.3
2+1  :  2 | + | 1
-2+1  :  -2 | + | 1
2+-1  :  2 | + | -1
1+1.1  :  1 | + | 1.1
2.1+1  :  2.1 | + | 1
-1.0-1.3  :  -1 | - | 1.3
-1-.3  :  -1 | - | 0.3

【讨论】:

  • @Jing 如果这回答了你的问题。请点赞我的回答。我正在寻找 stackoverflow 的信誉:)
  • @Jing 无论您的声誉如何,您都应该能够将答案标记为“正确”。你应该这样做;-)
猜你喜欢
  • 1970-01-01
  • 2014-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-05
相关资源
最近更新 更多