【问题标题】:HTML5 Input Pattern to allow comma separator for thousandsHTML5 输入模式允许逗号分隔数千
【发布时间】:2016-03-22 09:08:14
【问题描述】:

尝试为 HTML5 输入表单组合 regex,以允许逗号作为千位分隔符。因此,例如以下内容应该都是有效的:

  • 20
  • 3000
  • 4,000
  • 600000
  • 7,000,000
  • 8000000

我的要求是:

  • 只允许数字
  • 允许逗号
  • 任何大于 0 但小于 99999999 的数字

我有这个,但它似乎不起作用:

[0-9,]{1,8}

请注意,据我所知,HTML5 输入模式不需要^$,因为这些都是假设的。

【问题讨论】:

标签: regex html forms input


【解决方案1】:
(?=.{1,10}$)\d{1,3}(?:,\d{3})+|(?=.{1,8}$)\d+

分解为:

(?=.{1,10}$)\d{1,3}(?:,\d{3})+
  • (?=.{1,10}$) 前瞻确保总长度在 1 到 10 个字符之间(以满足 smaller than or equal to 99999999 要求)
  • \d{1,3} 1 到 3 位数字
  • (?:,\d{3})+ 后跟至少出现一次:逗号后跟 3 位数字

(?=.{1,8}$)\d+)
  • (?=.{1,8}$) 前瞻确保总长度在 1 到 8 个字符之间(以满足 smaller than or equal to 99999999 要求)
  • \d+ 至少一位数

Demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-06
    • 2019-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多