我想测试的所有字母数字字符的字符串,并返回true,只有当数字串的总数是7至11之间。
1234567 //真
11qqw3qd1221wqd2132 //真
abc123def456ghi789klm012 //假
该分7和最大11只适用于在字符串中的数字。
所以我知道如何测试数字的最小和最大长度的字符串:
^[\d]{7,11}$
但我怎么做同样的当:
A)数字不必须是连续的和
B)还有其他字符或字符串中空格。
尝试这个
var str = "...";
var digits = str.length - str.replace(/[0-9]/g, '').length;
var ok = digits >=7 && digits <=11;
或这个
str.match(/^([^0-9]*[0-9]){7,11}[^0-9]*$/)