【问题标题】:Find Regex for `1.5×10^9` & `4.75×10^9` in JavaScript?在 JavaScript 中查找“1.5×10^9”和“4.75×10^9”的正则表达式?
【发布时间】:2021-06-29 21:00:51
【问题描述】:

我正在尝试为1.5×10^9 查找正则表达式。我拥有的另一个值是4.75×10^9

我已经能够使用/(\d.\d)×10\^(\d)/ 使其适用于1.5×10^9,但这不适用于4.75×10^9

尤其是第一组是十进制数字,我无法将 Regex for decimal numbers 放在第一个括号 () 内。

我该怎么做?

我只想要 2 个值:第一个十进制值和插入符号后的值 ^

【问题讨论】:

  • 只需将\d 替换为\d+?

标签: javascript regex regex-group


【解决方案1】:

在下面的 cmets 中使用了 Wiktor Stribizew 的建议:

/(\d+(?:\.\d+)?)×10\^(\d+)/ // matches 1.5×10^9 & 4.75×10^9

这适用于我当前的用例,但可以找到更强大的小数位解决方案here

【讨论】:

  • 你必须转义点\.,因为它在正则表达式中有特殊含义。
  • 另外,您需要将+ 与所有\d 一起使用,并且可能还可以通过添加可选组/(\d+(?:\.\d+)?)×10\^(\d+)/ 来允许整数
  • 谢谢,@WiktorStribiżew,我认为您的代码看起来非常适合我的用例。我没有考虑 ^ 符号后的 2 位数字。支持整数也很好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多