1

JavaScript を使用して、文字列に数字または小数のみが含まれているかどうかを確認しようとしています。

文字列に数字または小数のみが含まれている場合は、パスする必要があります。それ以外の場合は、エラーがあることを示すアラートを表示します。

次のコードを使用してみましたが、何も警告しません..

私は何か間違ったことをしていますか?

var myString = "abc"; 

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

5 に答える 5

1

単純化しましょう:-)

 if (/^[\d\.]{3,}$/.test(myString)) {
    alert("Pass");
 } else {
    alert("Error");
 }
于 2012-11-08T07:03:10.957 に答える
1

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

デモ

if (myString.match(/^\d*[0-9](\.\d*[0-9])?$/) && myString.length > 2) {
        alert("Pass");
    } else {
        alert("Error");
    }
于 2012-11-08T07:01:23.113 に答える
0

あなたのコードは間違っています myString.length() は関数であり、実際には myString の長さではありません

var myString = "abc"; 

    if (myString.match(/[0-9]/, "g") && myString.length > 2) 
    {
        alert("Pass");
    }
    else
    {
        alert("Error");
    }
于 2012-11-08T07:14:44.510 に答える
0

試す:

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

配列または null の代わりにブール値を返しますmatch。全体:

if (/^\d{2,}$/.test(myString)){ 
...
}else{
...
}
于 2012-11-08T07:00:33.247 に答える
0

次のようにすべてをまとめることができます。

alert( /^\d{3,}$/.test( myString ) ? 'Pass' : 'Error' ) 
于 2012-11-08T07:03:05.680 に答える