review javascript 21:正規表現
2832 ワード
定義:文字列の「文字列の法則」を特定します.
(1)知識点(1.1)代替文字セット (1.2)事前定義代替文字セット (1.3)助数詞:文字セットの出現回数 (1.4)選択とパケット (1.5)変換 (1.6)マッチング指定位置 (1.7)事前判定 (1.8)漢字代替文字セット (2)細分化(2.1)代替文字セット:必須かつ複数の しか選択できません.(2.2)事前定義代替文字セット (2.3)助数詞:文字セットの出現回数 (2.4)選択とパケット選択: (2.5)変換 (2.6)マッチング指定位置 (2.7)前判子:正式に一致する前に、まず大体文字列全体の規則をあらかじめ判定し、除外法の4つの種類が多いです.数字、小文字、大文字、特殊記号 (2.8)漢字候補文字セット:[/u 4 e 00-\u 9 fa5]jQueryプラグインにはすでに大量の既製の正規表現が封入されています.例えば、電子メール、htmlタグ、urlアドレス (3)方法
定義されたRegExp:(3.1)test()メソッドは文字列内の指定値を検索する.戻り値はtrueまたはfalseです.test()メソッドは文字列の指定値を検索します.戻り値はtrueまたはfalseです. (3.2)exec()メソッドは文字列内の指定値を検索する.戻り値は、見つけられた値です.マッチが見つからない場合は、nullに戻ります. (3.3)comple()方法はRegExpを変更するために使用される. **Tips:検証を行う:全部前に^を加え、後に$を加えます.
(4)実践
(1)知識点
:[0-9]
:[a-z]
:[A-Z]
\d --> [0-9]
\w --> [0-9a-zA-Z_]
\s --> , :
\D --> 【\d】,
. -->
{min,max} -->
{min,} -->
{n} -->
? --> ,
--> ,
--> ,
--> |
パケット:
--> ( )
-->
--> ^
--> $
--> ^xx | xx$ ( |)
--> ^xxx$ ( |)
--> \bxxx\b
定義されたRegExp:
var patt = new RegExp("e");
var patt = new RegExp("e","g");
g:RegExpオブジェクトには2番目のパラメータを追加して検索を設定できます.(4)実践
init();
function init() {
phoneNum();
}
/**
* :
* +86 0086 , 1
*
* 1
* 34578
* 9
* (\+86|0086)?\s*1[34578]\d{9}
*/
function phoneNum(){
/**
*
*
*/
var p1 = new RegExp(/^1[34578]\d{9}$/);
/**
*
*
*/
var p2 = new RegExp(/1[34578]\d{9}/);
//
console.log(p1.test("134"));//false
console.log(p1.test("13122222222"));//true
console.log(p1.test("a13122222222b"));//false
console.log(p2.test("a13122222222b"));//true
//
console.log(p2.exec("a13122222222b"));//13122222222
}
RegExp:http://www.w3school.com.cn/js/js_OBregexp.asp RegExpオブジェクト:http://www.w3school.com.cn/jsref/jsref_OBregexp.asp