JavaScriptメールアドレス検証-正則検証


一、RegExp
1.1 RegExpオブジェクトの作成
new RegExp("  ,     ","  ,    g,i,m")
1.2 RegExpオブジェクトの方法
  • test:文字列の指定値を検索し、TrueまたはFalseを返します.
  • exec:文字列の指定値を検索して、見つけた値を返します.ない場合はnullです.
  • complie:正規表現を変更するか、または、マッチングモードを削除するために使用されます.
  • 1.2.1 test()
    var r1 = new RegExp('world');
    console.log(r1.test('Hello, world!')); //true
    console.log(r1.test('Hello, World!')); //false
    var r2 = new RegExp('world', 'i'); //      
    console.log(r2.test('Hello, World!')); //true
    var r3 = new RegExp(/world/i); //  
    console.log(r3.test('Hello, World!')); //true
    1.2.2 exec()
    var r1 = new RegExp('world');
    console.log(r1.exec('Hello, world!')); //['world']
    console.log(r1.exec('Hello, World!')); //null
    var r2 = new RegExp('world', 'i'); //      
    console.log(r2.exec('Hello, World!')); //['world']
    var r3 = new RegExp(/world/i); //  
    console.log(r3.exec('Hello, World!')); //['world']
    var r4 = new RegExp('o');
    console.log(r4.exec('Hello, World!')); //['o']
    var r5 = new RegExp('o', 'gi');
    console.log(r5.exec('Hello, WOrld!')); //['o']
    console.log(r5.lastIndex); //5              ,o 4,      5
    console.log(r5.exec('Hello, WOrld!')); //['O']       o       
    console.log(r5.lastIndex); //9
    console.log(r5.exec('Hello, WOrld!')); //null       null
    console.log(r5.lastIndex); //0 lastIndex   0
    1.2.3 complie()
    var r1 = new RegExp('world');
    console.log(r1.exec('Hello, world!')); //['world']
    r1.compile('o');
    console.log(r1.exec('Hello, World!')); //['o']
    r1.compile('m');
    console.log(r1.exec('Hello, World!')); //null
    var r2 = new RegExp('world');
    console.log(r2.test('Hello, world!')); //true
    r2.compile('mazey');
    console.log(r2.test('Hello, world!')); //false
    二、正規表現
  • ^$:マッチング値の開始と終了を示す.
  • +:1+、一つ以上.
  • *:0/+、ゼロ以上.
  • ?:0/1、ゼロまたは一つ.
  • {1,2}:1<=length<=2,長さです.
  • ():1つの式のグループを表します.
  • []:マッチングされた文字範囲は、ブロックとして理解され、多くのブロックが一つのグループ()に配置されている.
  • 三、例
    function check(){ var reg = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$"); // var obj = document.getElementById("mazey"); // if(obj.value === ""){ // alert(" !"); return false; }else if(!reg.test(obj.value)){ // , alert(" !"); return false; }else{ alert(" !"); return true; } }
    付録
    https://blog.mazey.net/589.html.