【发布时间】:2017-06-05 10:24:34
【问题描述】:
各位专家, 我有一个要求,我认为正则表达式可能有助于减少代码中的大量 if 语句和条件。 我的要求是这样的 我有一个显示在 UI(JavaScript)中的数量字段,它有一个从后端发送的控制因子(基于数量字段的测量单位)。
例如我的数量 = "126.768" 控制因子D=“2”(表示小数点后的显示位数为2)。
现在我需要一个正则表达式来查找以下内容
Regex1 应该检查数量是否有任何小数点。如果是这样,那么它应该检查小数点后的值是否不仅仅是零(例如,有时数量没有被格式化为小数点的全长 145.000,在我们的例子中,它应该在 UI 中显示为 145 和控制因子 D不需要考虑)。 RegEx 还应考虑诸如“.590”“.001”等数量值。
由于我是 RegEx 的新手,所以我很难想出一个表达方式
我设法制作了一个非常基本的正则表达式,只检查“。”在“。”之后的数量和所有值内。 正则表达式 = /[.]\d*/g
如果 RegEx1 返回一个肯定的结果。然后 Regex2 现在应该检查值 D。它应该根据 D 调整小数点。例如,如果 D = 3 并且数量 = 345.26,那么正则表达式 2 的输出应该给出 345.260,同样是 D = 1,那么数量应该是 345.3(不知道是否可以使用 RegEx 进行舍入,没有舍入的解决方案也可以)。
问候, 宾斯
【问题讨论】:
-
一般来说,使用正则表达式来操作和格式化数字是个坏主意。
标签: javascript regex regex-group