【问题标题】:Decimal number Regular expression including +, - sign十进制数正则表达式,包括+、-号
【发布时间】:2016-09-19 07:12:09
【问题描述】:

我需要一个正则表达式来验证一个十进制数,其中也包括 +、- 号。例如:

+.12

-0.13

0.+

45.-

但以下是无效的十进制数字:

+-0.12

+99.+2

0.-12

【问题讨论】:

  • 为什么0.+, 45.- 有效?
  • ^(\+|-)?(\d*.\d*)(\+|-)?$ 试试这个
  • @dharmesh # 通过。 k 也是如此。或@.
  • @dharmesh 使用字符组而不是交替,你不会相信会有多大的差异(速度)......你也应该逃避.
  • 0.+ 和 45.- 如何是有效的十进制数? @arvind

标签: javascript regex numbers decimalformat


【解决方案1】:

/^[-+]?(?:0|[1-9]\d*)?\.\d*[+-]?$/gm

标志:“g”(全局)尽可能多地匹配整个正则表达式。 “m”(多行)匹配行的开头和结尾与^$

  • ^ 行首。
  • [-+]? 字符“+”或“-”。问号表示前面的部分匹配不上可以跳过。
  • (?:0|[1-9]\d*)? 匹配:“0”或 >= 1。
  • \. 文字点“。”
  • \d* 零个或多个数字 (0 - 9)。
  • [+-]? 字符“+”或“-”(可选)。
  • $ 行尾。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-26
    • 2016-03-23
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多