📅  最后修改于: 2023-12-03 14:55:54.018000             🧑  作者: Mango
正则表达式是一种强大的文本匹配工具,在很多场合都能发挥巨大的作用。其中,针对数字的匹配是常见的需求。有时,我们需要确保数字的长度符合要求,比如限制只能是 4 或 6 位数字。这时,就可以借助正则表达式来实现。
下面是一个简单的 JavaScript 版本示例,用于验证输入的数字是否为 4 或 6 位数字:
function validateNumber(num) {
const reg = /^[0-9]{4}(?:[0-9]{2})?$/;
return reg.test(num);
}
console.log(validateNumber("1234")); // true
console.log(validateNumber("12345")); // false
console.log(validateNumber("123456")); // true
console.log(validateNumber("1234567")); // false
上面代码使用的正则表达式为 /^[0-9]{4}(?:[0-9]{2})?$/
,下面对其进行解析:
^
表示匹配字符串的开始位置。[0-9]{4}
表示匹配 4 位数字({4}
表示数量为 4)。(?:[0-9]{2})?
表示可选的 2 位数字((?:)
表示非捕获型分组,?
表示该分组出现 0 次或 1 次)。$
表示匹配字符串的结束位置。因此,这个正则表达式可以匹配如下字符串:
正则表达式是一个强大的文本匹配工具,而对数字的匹配是其常见的用途之一。在限制数字长度时,可以借助正则表达式实现精确匹配,从而保证数据的有效性。