我正在尝试使用JavaScript检查我的字符串中是否只包含数字或小数。
如果字符串中只有数字或小数,那么它应该传递,否则它想要显示一个警告,说明有错误。
我已尝试使用以下代码,但它不会发出任何警报..
我做错了吗?
var myString = "abc";
if (myString.matches("[0-9].") && myString.length() > 2)
{
alert("Pass");
}
else
{
alert("Error");
}
答案 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");
}