test()メソッドは、文字列がパターンと一致するかどうかを検出するために使用されます。
指定された正規表現が見上げられている文字列で一致するかどうかを示すブール値を返します。
regexp.test(str)
パラメーター
regexpが必要です。正規表現パターンまたは利用可能なフラグを含む正規表現オブジェクト。
STR必要なオプション。テストする文字列。
説明します
テスト方法は、文字列が指定された正規表現パターンと一致するかどうかを確認します。
各正規表現には、最後の一致が終了する位置を記録するLastIndex属性があります。
var re = /^[1-9] {4,10} $ /gi; var str = "123456"; alert(re.test(str)); // trueを返します//上記のテストを実行した後、ポップアップできます
アラート(re.lastindex); // 6ポップアップ
つまり、最後は6番目のキャラクターの後に終了しました
次にテストを呼び出すとき、6番目のキャラクターの後も検索し続けます。
回避策:正規表現のlastIndexプロパティを0に設定します
特定のコードは次のとおりです
<script type = "text/javascript"> var re =/^[1-9] {4,10} $/gi; var str = "123456"; alert(re.test(str)); // truere.lastindex = 0; alert(re.test(str)); // true </script>を返しますJavaScriptフォームは、電子メールメールボックスを検証し、入力額が電子メールであるかどうかを判断し、正規表現を通じてそれを実装します。
//メールアドレスを確認してください
function check(){var email = document.getElementbyId( "email")。値; var isemail =/^[az]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[/。] [az] {2,3}([/。] [az] {2})?メール! "); falseを返します。 } if(email.length> 25){alert( "長さが長すぎる"); false} return} if(!isemail.test(email)){alert( "not an email"); falseを返します;}}ルールでのJSでのtest()関数の使用に関する上記の簡単な議論は、私があなたと共有するすべてのコンテンツです。私はそれがあなたに参照を与えることができることを願っています、そしてあなたがwulin.comをもっとサポートできることを願っています。