如何确定字符串是仅包含数字还是逗号?
var x = '99,999,999';
var isMatch = x.match('/[\d|,]/');
以上总是返回null。
答案 0 :(得分:0)
试试这个:/^[\d,]+$/
请注意,这不会告诉您数字格式是否正确(即,99,
将被99
或9,999
接受。< / p>
/^(?:\d{1,3}(?:,\d{3})*$|^\d+$)/
虽然更复杂,但此正则表达式会测试该数字是否为格式正确的数字(它不会接受,
,1,
,,1
, 1111,
,1,1,1
仅1
,11
,111
,1,111
,1111
等。)
答案 1 :(得分:0)
更准确一点:
/^\d{1,3}(?:,\d{3})*$/
仅在右侧每隔3位数后用逗号分隔数字时匹配。 (这不包括小数)