【发布时间】:2018-10-30 15:19:07
【问题描述】:
我正在寻找一个允许以下输入的正则表达式:
100,120
10.50,100
129,10.6
1.1,2.4
并拒绝任何其他输入。 基本上,验证数字(浮点数或整数)的正则表达式由逗号(,)正确分隔。
下面是我的 HTML 输入代码,
<input type='text' className='form-control' pattern='/^-?\d*\.?\d*$/' required/>
试用:
我尝试了建议的正则表达式 /^-?\d+(?:\.\d+)?,-?\d+(?:\.\d+)?$/ 包裹在 \ 中并附加到 pattern 属性。
这个正则表达式在
的情况下显示无效输入1,2
1,2,3
1.0,1.2
【问题讨论】:
-
请与我们分享您自己解决此问题的尝试。我们很乐意提供帮助,但不太热衷于免费工作。
-
这样可以:^-?\d+(?:\.\d+)?,-?\d+(?:\.\d+)?$ 作为模式。
-
@Poul Bak,
"2,5,7,5".match(/^-?\d+(?:\.\d+)?,-?\d+(?:\.\d+)?$/);返回 false。与"2"相同。 -
我可以在输入标签的
pattern属性中使用相同的正则表达式吗?或者我需要更改任何字符以使此 RegEx 在 Pattern 属性中工作? -
@Amessihel,当然它返回 fals,你不能使用与分隔符相同的小数分隔符。
标签: javascript regex