js正則表達式是一種規則字符串
正則表達式定義:
var str="I am a good boy123";
/*描述規則*/
var reg=/4/;
/*根據正則表達式的規則判斷字符串是否符合規則*/
var flag=reg.test(str);
alert(flag);
/*根據正則表達式找到符合規則的字符串返回給你*/
var element=reg.exec(str);
alert(element);
正則表達式:
正則表達式所支持的常用通配符
| . |
可以匹配任何字符 |
| \d |
匹配0-9的所有數字 |
| \D |
匹配非數字 |
| \s |
匹配所有空白字符,包括空格、制表符、換行符、回車符等 |
| \S |
匹配所有非空白字符 |
| \w |
匹配所有的單詞字符,包括0-9數字、26個英文字母和下划線 |
| \W |
匹配所有的非單詞字符 |
| \b |
匹配單詞邊界 |
| \B |
匹配非單詞邊界 |
| [abc] |
查找方括號之間的任何字符 |
| [^abc] |
查找任何不在方括號之間的字符 |
| [0-9] |
查找任何從0至9的數字 |
| [a-z] |
查找任何從小寫a到小寫z的字符 |
| [A-Z] |
查找任何從大寫A到大寫Z的字符 |
| [A-z] |
查找任何從大寫A到小寫z的字符 |
| (red|blue|green) |
查找任何指定的選項 |
js正則表達式量詞:
正則表達式量詞
| n+ |
匹配任何包含至少一個n的字符串 |
| n* |
匹配任何包含零個或多個n的字符串 |
| n? |
匹配任何包含零個或一個n的字符串 |
| n{X} |
匹配包含X個n的序列的字符串 |
| n{X,Y} |
匹配包含X或Y個n的序列的字符串 |
| n{X,} |
匹配包含至少X個n的序列的字符串 |
| n$ |
匹配任何結尾為n的字符串 |
| ^n |
匹配任何開頭為n的字符串 |
正則表達式修飾符
| i |
執行對大小寫不敏感的匹配 |
正則表達式練習題:
例如判定一個郵箱:1750514279@qq.com
var email =1750514279@qq.com;
var reg=/^[0-9a-zA-Z_]+@[0-9a-zA-Z]+\.[a-zA-Z]$/將.變成\.無意義
var flag=reg.test(email);
alert(flag);
true。
判定年月日:
var time=“2018-12-6”;
var reg=“/^[0-9]{4}-[1]?[0-9]-[0-9]{1,2}$/”
var flag=reg.test(time);
alert(flag);
判斷5-12qq,非零開頭
var qq="1750514279"
var reg=/^[1-9][0-9]{5,13}$/
var flag2=reg0.test(qq);
alert(flag2);
8-10數字字母下划線
var pass="lvmin521_";
var reg1=/^[a-zA-Z0-9_]{8,11}$/;
var flag1=reg1.test(pass);
alert(flag1);
11位的電話號碼
第一位數字為1,第二位為3-9,后面隨便9位數
var tel="17864382939";
var reg3=/^[1][4-8][0-9]{9}$/;
var flag3=reg3.test(tel);
alert(flag3);
