1、元字符:在正则中有特殊含义的字符。
2、量词:表示数量的词。
3、范围匹配:规定正则在指定的字符列表中进行匹配,每次只会匹配字符列表中的一个字符。
例如:
var str ='abcdefgadc,afcfkldsjafl';
var re1 =/abc/g; //匹配abc,
console.log(str.match(re));
var re2= /a[bdf]c/g;//匹配abc,adc,afc
console.log(str.match(re2));
var str2 = 'abcdefg,afcdjfkejfigijijg';
var re3 =/[a-z]+/g;
console.log(str2.match(re3));
正则的一个小练习
var str ='afs2398fdsa89lijj4324fsaf8900gfgdfg';
//字母加数字 第一种字母个数不限,数字个数为1。第二种是字母个数为1,数字字数不限。
var re =/[a-z]+\d/g;
console.log(str.match(re));
var re2 =/[a-z]\d+/g;
console.log(str.match(re2));
4、分组
正则分组的一个小练习
var str = 'adf1d2l43jfds3d8s8k5fdsf98024';
var re =/([a-z]\d)+/g;
console.log(str.match(re));
5、位置限制
正则位置限制的小练习
var str = '12345fjgkfkg45454jkjrtkrj87876';
var re1 = /^\d+/g;//匹配出现在字符串开始位置的数字
console.log(str.match(re1));
var re2= /\d+$/g;//匹配出现在字符串结束位置的数字
console.log(str.match(re2));
6、修饰符
7、范围排除
^ :当该符号出现在[ ]里开始位置时,表示匹配除了[ ]中列出的字符之外的任意字符。
当 ^ 出现在非开始位置时,它只是一个普通的字符。
var str = 'fdsabcfjladc240afckljdjfo';
var re =/a[^bdf]c/g;
console.log(str.match(re));
8、多选匹配: | 分别匹配出各自的结果,并都返回。
var str ='ddfd354545GFHGHFfdhfjhdj89dhfdhfh45HFJDH';
var re =/[a-z]+|[A-Z]+/g;
consolelog(str.match(re));
9、正则方法
(1)、test()方法用验证字符串是否符合正则规则。
(2)、exec()方法匹配字符串中符合正则规则的字符串和该字符串所出现的位置。
(match 是属于字符串方法)
var str = 'adf68787jdkfjkdjf8989u9';
var re =/\d/;
console.log(re.test(str));//验证字符串中是否包含有数字
10、支持正则的字符串方法
(1)search() 与indexOf()方法类似,用来查找指定字符串在字符串中出现的位置。
返回的是第一个符合要求的结果在整个字符串中所在的位置。
如果没有符合正则要求的结果,返回-1。
(2)replace() 替换字符串中指定的值
(3)split() 将字符串按指定的分割符进行分割。
(4)match()方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。返回值是存放匹配结果的数组。该数组的内容依赖于 regexp 是否具有全局标志 g。