Javascript 用于浮点匹配字符串的正则表达式,如;12.“;也?

Javascript 用于浮点匹配字符串的正则表达式,如;12.“;也?,javascript,regex,Javascript,Regex,我尝试使用此正则表达式匹配浮点值: (^\d{0,11}$)|^\d{0,11}([.]\d{0,6})?$ 但是,我不希望允许像12.这样的字符串,即末尾带有点的数字 请让我给我一个建议。你限制小数部分的计数如何。。像这样 ^\d{0,11}(?:\.\d{1,6})?$ 你可以用 ^\d{0,11}(?:\.\d{1,6})?$ 如果使用\d{0,6},则模式可能与空字符串匹配。请注意,不建议使用RegexStorm.net测试JS正则表达式,因为它只支持.net正则表达式并使用CRL

我尝试使用此正则表达式匹配浮点值:

(^\d{0,11}$)|^\d{0,11}([.]\d{0,6})?$
但是,我不希望允许像
12.
这样的字符串,即末尾带有点的数字


请让我给我一个建议。

你限制小数部分的计数如何。。像这样

^\d{0,11}(?:\.\d{1,6})?$
你可以用

^\d{0,11}(?:\.\d{1,6})?$
如果使用
\d{0,6}
,则模式可能与空字符串匹配。请注意,不建议使用RegexStorm.net测试JS正则表达式,因为它只支持.net正则表达式并使用CRLF行结尾

详细信息

  • ^
    -字符串的开头
  • \d{0,11}
    -0到11位数字
  • (?:\。\d{1,6})
    -一个可选的
    • \。
      -一个点
    • \d{1,6}
      -1到6位
  • $
    -字符串结束

请参阅。

我在regexstorm.net上测试了regex。。它与'12'匹配。您可能希望将其编写为
^\d{0,11}(?:\。\d{1,6})$
。如果使用
\d{0,6}
,则模式可能与空字符串匹配。顺便说一句,要测试JS regex,请使用regex101.com,例如,regexstorm仅支持.NET regex并使用CRLF行结尾。谢谢@WiktorStribiżew,它正在工作