This question already has an answer here:
Why this javascript regex doesn't work?
(1 个回答)
去年关闭。
我很惊讶我没有在互联网上找到这个。
是否有正则表达式仅验证字符串中的数字,包括以 0 开头而不是空格的数字
这是我正在使用的示例
但仍将 isValid 值设置为 false
通过这种方式,您可以强制匹配仅从该字符串的开头到结尾的数字。
示例: https://regex101.com/r/jP4sN1/1
jsFiddle在这里: https://jsfiddle.net/gvqzknwk/
笔记:
如果您使用 RegExp 构造函数,则需要对
所以你的功能可能是:
(1 个回答)
去年关闭。
我很惊讶我没有在互联网上找到这个。
是否有正则表达式仅验证字符串中的数字,包括以 0 开头而不是空格的数字
这是我正在使用的示例
function ValidateNumber() {
var regExp = new RegExp("/^\d+$/");
var strNumber = "010099914934";
var isValid = regExp.test(strNumber);
return isValid;
}
但仍将 isValid 值设置为 false
最佳答案
您可以使用/^\d+$/
。
这意味着:
^
字符串开始 \d+
一个数字,一次或多次 $
字符串结束 通过这种方式,您可以强制匹配仅从该字符串的开头到结尾的数字。
示例: https://regex101.com/r/jP4sN1/1
jsFiddle在这里: https://jsfiddle.net/gvqzknwk/
笔记:
如果您使用 RegExp 构造函数,则需要对
\
选择器中的 \d
进行双重转义,因此传递给 RegExp 构造函数的字符串必须是 "^\\d+$"
。所以你的功能可能是:
function ValidateNumber(strNumber) {
var regExp = new RegExp("^\\d+$");
var isValid = regExp.test(strNumber); // or just: /^\d+$/.test(strNumber);
return isValid;
}