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