Javascript Regex 仅适用于数字且无空格

标签 javascript regex

<分区>

我很惊讶我没有在互联网上找到这个。 是否有一个正则表达式只验证字符串中的数字,包括那些以 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;
}

关于Javascript Regex 仅适用于数字且无空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36383177/

相关文章:

正则表达式 : for US phone number

javascript - 如何使用angularjs限制用户不在文本框中输入特殊字符

PHP 正则表达式忽略以双下划线开头的文件

regex - 在多个索引处拆分字符串 --> [String]?

javascript - 获取产品给定日期

javascript - 启用 select2 多选搜索框

javascript - 使用 eval 从字符串创建函数的不同方法

javascript - 哪一个更快? `array.findIndex` 与 `array.reduce` + `object[index]`

javascript - ES6中如何将对象映射到数组?

regex - Bash:第一次出现的字符之间的正则表达式匹配