JavaScript正規表現定義文字セット


[a-e]       aからeまでの文字の中のある文字を表します.
[eiou]      この5文字のうちのいずれかの文字を表します.
[a-zA-Z]      大文字、小文字のいずれかを表します.
[a-zA-Z 0-9_-]   または小文字、または大学、または数字またはアンダーラインのある文字
[0-9]       0から9の間の任意の数字を表します.

    //        
    //[0-9]  
    var reg = /[0-9]/
    var str = "2017-8-12";
    //  :["2", index: 0, input: "2017-8-12"]

    var reg = /[5-7]/
    var str = "1997";
    //  :["7", index: 3, input: "1997"]

    var reg = /[a-e]/;
    var str = "hello";
    //  :["e", index: 1, input: "hello"]

    var reg = /[A-G]/;
    var str = "World";
    //  :null

    var reg = /[ptrdx]/;
    var str = "computer";
    //  :["p", index: 3, input: "computer"]

    var reg = /[a-zA-Z0-9_-]/;
    var str = "@##$%^&*(_#@FJD";
    //  :["_", index: 9, input: "@##$%^&*(_#@FJD"]
    
    //   .match(  )
    var rst = str.match(reg);
    console.log(rst);
1、特別文字構成
$ : 入力文字列の末尾にマッチします.
^ : 文字列の開始位置を表します.
():サブ表現の開始位置と終了位置を指定します.
* : その前のユニットは0回以上(任意回数)
... : 改行以外の任意の1文字にマッチします.
+ : その前のユニットは1回以上現れます.
? : その前のユニットは0回か1回現れます.
\ : この記号は意味を転換するためのものです.
𞓜 : 二つの項目のうちの一つの選択を指定します.
+   ?  * 機能:

    var reg = /[0-9]+/;
    var str = "2017-8-12";
    //  :["2017", index: 0, input: "2017-8-12"]

    var reg = /go*gle/;
    var str = "goooooogle";
    //  :["goooooogle", index: 0, input: "goooooogle"]

    var reg = /[0-9]*/;
    var str = "today is 222";
    //  :["", index: 0, input: "today is 222"]
    var str = "222 today is";
    //  :["222", index: 0, input: "222 today is"]

    var reg = /wo?rld/;
    var str = "woorld";
    //  :null
    var str = "wrld";
    //  :["wrld", index: 0, input: "wrld"]

    //   .match(  )
    var rst = str.match(reg);
    console.log(rst);
...   |  \  機能:

    var reg = /.*/;
    var str = "dasda^%&%*lklJDS";
    //  :["dasda^%&%*lklJDS", index: 0, input: "dasda^%&%*lklJDS"]

    var reg = /milk|fish/;
    var str = "cat like eat fish";
    //  :["fish", index: 13, input: "cat like eat fish"]
    var str = "cat like eat milk and fish";
    //  :["milk", index: 13, input: "cat like eat milk and fish"]

    var reg = /[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/;
    var str = "123.206.94.112";
    //  :["123.206.94.112", index: 0, input: "123.206.94.112"]
    var str = "123.206.94";
    //  :null

    //   .match(  )
    var rst = str.match(reg);
    console.log(rst);
^   $ 機能:

    var reg = /^banana/;    //       
    var str = "monkey like banana";
    //  :null
    var str = "banana like monkey";
    //  :["banana", index: 0, input: "banana like monkey"]

    var reg = /banana$/;    //       
    var str = "monkey like banana";
    //  :["banana", index: 12, input: "monkey like banana"]
    var str = "banana like monkey";
    //  :null

    var reg = /13[0-9]{9}/;    //{9}      
    var str = "13837264738";
    //  :["13837264738", index: 0, input: "13837264738"]
    var str = "13837264738heihei";
    //  :["13837264738", index: 0, input: "13837264738heihei"]
    var reg = /^13[0-9]{9}$/;    //{9}      
    var str = "13837264738";
    //  :["13837264738", index: 0, input: "13837264738"]
    var str = "ddd13837264738heihei";
    //  :null

    //   .match(  )
    var rst = str.match(reg);
    console.log(rst);
()  機能:

    var reg = /(go)+gle/;
    var str = "gogogogogle";
    //  :["gogogogogle", "go", index: 0, input: "gogogogogle"]
    var str = "gooooogle";
    //  :null

    var reg = /<span>(.*)<\/span>/;    //()      
    var str = "<div><span>  </span><a>[email protected]</a></div>";
    //  :(2) ["<span>  </span>", "  ", index: 5, input: "<div><span>  </span><a>[email protected]</a></div>"]
    //   .match(  )
    var rst = str.match(reg);
    console.log(rst);
    console.log(rst[1]);
2、モード修正子
varモード名=/モード内容/モード修正子

    var reg = /[a-z]/;
    var str = "helloBEIJING";
    //  :["h", index: 0, input: "hello BEIJING"]

    var reg = /[a-z]+/;
    var str = "helloBEIJING";
    //  :["hello", index: 0, input: "hello BEIJING"]

    var reg = /[a-z]+/i;    //i     
    var str = "helloBEIJING";
    //  :["helloBEIJING", index: 0, input: "helloBEIJING"]


    var reg = /[0-9]+/;
    var str = "2015-03-23 17:30:20";
    //  :["2015", index: 0, input: "2015-03-23 17:30:20"]

    var reg = /[0-9]+/g;
    var str = "2015-03-23 17:30:20";
    //  :(6) ["2015", "03", "23", "17", "30", "20"]

    var reg = /[a-z]+[0-9]+/;
    var str = "XiangGang1997Aomen1999";
    //  :["ang1997", index: 6, input: "XiangGang1997Aomen1999"]

    var reg = /[a-z]+[0-9]+/ig;
    var str = "XiangGang1997Aomen1999";
    //  :(2) ["XiangGang1997", "Aomen1999"]

    //   .match(  )
    var rst = str.match(reg);
    console.log(rst);
    console.log(rst[1]);
3、モードユニットの重複マッチング

    var reg = /([0-9]+-([0-9]+-[0-9]+)) ((([0-9]+):[0-9]+):[0-9]+)/;
    var str = "2017-08-12 15:48:30";
    //  :(6) ["2017-08-12 15:48:30", "2017-08-12", "08-12", "15:48:30", "15:48", "15", index: 0, input: "2017-08-12 15:48:30"]

    //   .match(  )
    var rst = str.match(reg);
    console.log(rst);
    //console.log(rst[1]);