如何使用正则表达式验证Javascript中的数字字段?

Vai*_*eri 2 javascript

以下是否正确?

var z1=^[0-9]*\d$;
{
    if(!z1.test(enrol))
    {
        alert('Please provide a valid Enrollment Number');
        return false;
    }
} 
Run Code Online (Sandbox Code Playgroud)

它目前没有在我的系统上工作.

tec*_*bar 13

您可以将其测试为:

/^\d*$/.test(value)
Run Code Online (Sandbox Code Playgroud)

哪里:

  1. /两端标记的正则表达式的开始和结束
  2. ^$在两端是检查完整的字符串比部分匹配
  3. \d* 查找多次出现的数字字符

你不需要同时检查它们\d,[0-9]因为它们都是相同的 - 即匹配数字.


Ser*_*yan 10

var numberRegex = /^\s*[+-]?(\d+|\.\d+|\d+\.\d+|\d+\.)(e[+-]?\d+)?\s*$/
var isNumber = function(s) {
    return numberRegex.test(s);
};

"0"           => true
"3."          => true
".1"          => true
" 0.1 "       => true
" -90e3   "   => true
"2e10"        => true
" 6e-1"       => true
"53.5e93"     => true

"abc"         => false
"1 a"         => false
" 1e"         => false
"e3"          => false
" 99e2.5 "    => false
" --6 "       => false
"-+3"         => false
"95a54e53"    => false
Run Code Online (Sandbox Code Playgroud)