验证输入值包含x个数字字符
validate input value contain x numbers of numeric characters
我需要验证一个输入字段,它应该包含至少x个数字字符。
例如:假设我需要输入值至少有5个数字字符
12345 - valid
AB12345 - valid
123456 - valid
AB312312 - valid
asd - not valid
213 - not valid
首先我尝试了input.length
,但我不知道它是否有一个前导字母,所以length
对我没有帮助
我应该如何用jquery或javascript做这个验证?
假设您正在查看验证5个数字,那么您可以使用正则表达式/(?=(?:['d]){5})
。
这个表达式的作用是;
-
(?=)
表示开始向前看 -
(?:['d])
表示匹配数字但不捕获它们 -
{5}
表示(?:['d])
(匹配数字)做5次
"use strict";
let numbers = [ '12345', 'ABC12345', '123456', 'AB312312', 'asd', '213'];
numbers.forEach(number=> {
if (/(?=(?:['d]){5})/.exec(number)) {
console.log(number + " is valid.");
};
});
使用正则表达式就可以了
function check(str,x){
var pattern = '^[a-zA-Z0-9]*[0-9]{'+x+'}[a-zA-Z0-9]*$';
if(str.match(pattern)) return true;
return false;
}
这样怎么样
x = 5;
myString = "AB12345";
if (myString.replace(/[^0-9]/g,"").length >= x) {
alert('valid');
} else {
alert('not valid');
}
If
inputValue.replace(/[^0-9]/g,"").length < 5
则输入字段无效
相关文章:
- 如何限制一个字段只接受4个数字字符作为输入,并获得'It’这是潜水警报
- 为什么这个正则表达式不't匹配最后一个字母数字字符
- Javascript Regex选择每个非字母数字字符和空白
- JavaScript正则表达式(带_-的字母数字字符)
- 在粘贴事件Javascript的输入字段中删除所有非数字字符
- 链接问题:下一个字符包含在<a>TinyMce ui TinyMce中的标签
- REGEX (javascript) - 允许字母数字字符中的特殊字符不在第一个位置
- 为什么我的捕获括号之外的字符包含在我的正则表达式的匹配项中
- 在另一个由非字母数字字符分隔的字符串中搜索(任何)字符串
- 替换不包括 unicode 的非数字字符
- 正则表达式检查字符串是否仅包含字母数字字符和空格 - javascript
- HTML5 输入类型=数字值在 Webkit 中为空,如果包含空格或非数字字符
- JavaScript Regex应仅包含N个数字字符
- 当字符串包含非数字字符时,parseFloat()是如何工作的?
- 验证输入值包含x个数字字符
- Javascript中包含非数字字符的字符串中的数字数组
- 检查至少包含一个或多个数字并包含字符的字段
- 接受特殊字符的正则表达式,但 除外 ;并且必须包含一个字母数字字符
- 用于检查字符串是否至少包含3个字母数字字符的最有效正则表达式
- 对字符串中至少包含一个字母数字字符的单词进行计数