用于检查字符串中是否只有数字或小数的JavaScript函数

时间:2012-11-08 06:59:07

标签: javascript

我正在尝试使用JavaScript检查我的字符串中是否只包含数字或小数。

如果字符串中只有数字或小数,那么它应该传递,否则它想要显示一个警告,说明有错误。

我已尝试使用以下代码,但它不会发出任何警报..

我做错了吗?

var myString = "abc"; 

        if (myString.matches("[0-9].") && myString.length() > 2) 
        {
            alert("Pass");
        }
        else
        {
            alert("Error");
        }

5 个答案:

答案 0 :(得分:1)

使用^\d*[0-9](\.\d*[0-9])?$

<强> DEMO

if (myString.match(/^\d*[0-9](\.\d*[0-9])?$/) && myString.length > 2) {
        alert("Pass");
    } else {
        alert("Error");
    }

答案 1 :(得分:1)

让我们简化: - )

 if (/^[\d\.]{3,}$/.test(myString)) {
    alert("Pass");
 } else {
    alert("Error");
 }

答案 2 :(得分:0)

尝试:

/^\d+$/.test(myString)

返回布尔值而不是数组或null,这是match的作用。共:

if (/^\d{2,}$/.test(myString)){ 
...
}else{
...
}

答案 3 :(得分:0)

你可以像这样把它们放在一起:

alert( /^\d{3,}$/.test( myString ) ? 'Pass' : 'Error' ) 

答案 4 :(得分:0)

您的代码错误myString.length()实际上并不是myString

的长度
var myString = "abc"; 

    if (myString.match(/[0-9]/, "g") && myString.length > 2) 
    {
        alert("Pass");
    }
    else
    {
        alert("Error");
    }