定义规则让计算机去处理字符串
正则表达式写法:
1 //第一种 2 var reg = new RegExp('ab'); 3 4 //第二种 5 var reg = /ab/;
量词:{}
1 [a-z] 从小写a-z 2 [A-Z] 大写A-Z 3 [0-9] 0-9 4 [^a] 除了a以外的
匹配子集:()
1 var str = 'abcvbcafbc'; 2 console.log( str.match( /(bc)+/g ) );//输出结果为:["bc", "bc", "bc"]
标识:
1 g : 搜索整个字符串 2 i : 不区分大小写 3 var str = 'abcvBcafbc'; 4 str.match( /(bc)+/gi )//整个字符串搜索,不区分大小写
元字符
1 ^ -------> 字符串开始 2 $ -------> 字符串结束 3 d ------> 数字 4 w ------> 匹配数字、字母、下划线 5 s ------> 匹配任意空白符 6 //常用反义词 7 D ------> 非数字 8 W ------> 匹配任意不是字母,数字,下划线,汉字的字符 9 S ------> 匹配任意不是空白符的字符 10 [^x] ----> 匹配除了x以外的任意字符 11 [^abcfg] -> 匹配除了aeiou这几个字母以外的任意字符 12 [u2E80-u9FFF] --> 匹配中文汉字
小实例
1 // 验证qq号: 2 /^[1-9]{1}d{4,8}$/ 3 // 验证邮箱: 4 /^(w+|w+(.w+))+@(w+.)+w+$/ 5 // 验证身份证号码: 6 /^[1-9]d{5}[1-2]d{3}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])(d{3}|X)$/ 7 // 验证手机号 8 /^1[3578]d{9}$/ 9 // 固定电话 10 /^0d{2,3}(((-|\_)d{7,8}$)|(d{7,8}$))/ 11 //只有中文和英文 12 /^([u2E80-u9FFF]|[a-zA-Z])+$/g