定义规则让计算机去处理字符串
正则表达式写法:
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}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])(\d{3}|X)$/ 7 // 验证手机号 8 /^1[3578]\d{9}$/ 9 // 固定电话 10 /^0\d{2,3}(((\-|\_)\d{7,8}$)|(\d{7,8}$))/ 11 //只有中文和英文 12 /^([\u2E80-\u9FFF]|[a-zA-Z])+$/g