整数的正则表达式(数千逗号,无小数)

时间:2017-04-04 15:18:59

标签: regex validation

我需要验证表单上的输入过滤器,因为由于我使用的模板,我无法格式化输出。这是一个价格领域,我需要输出统一。我能够使用正则表达式来验证输入。

我希望正则表达式是一个用逗号分隔数千的整数。没有小数。没有$。

有效:

* 0 (just zero) 
* 100
* 1,000 
* 10,000

无效:

  • 01(领先零)
  • 100.50
  • 1000
  • $ 10,000个
  • -10,000(无负数)

有谁知道怎么做?我找不到这个,并认为它应该是一个普通的正则表达式。

2 个答案:

答案 0 :(得分:0)

您可以使用此正则表达式: ^(0|[1-9][0-9]{0,2})(,[0-9]{3})*$

下面是一个python实现:

import re
regex = r"^(0|[1-9][0-9]{0,2})(,[0-9]{3})*$"
num = "10,000"
if re.search(regex, num):
  print(True)
else:
  print(False)

答案 1 :(得分:0)

我相信你需要类似的东西,

使用 javascript

^(0|[1-9][0-9]{0,2})(,[0-9]{3})*$