一、正则表达式的概念
------来自维基百科的介绍。
二、常用的元字符
- /^/ 匹配字符串的开始,
- /$/ 匹配字符串的结束,
- /. / 匹配换行符以外的任意字符,
- /\w/ 匹配字母或数字或下划线或汉字
- /\s/ 匹配任意的空白符
- /\d/ 匹配数字
- /\b/ 匹配单词的开始或结束
三、常用的反复字符
- /* / 重复零次或更多次 {0,n}
- /+ / 重复1次或更多次 {1,n}
- /? / 重复零次或1次 {0,1}
- /{n} / 重复n次
- /{n,}/ 重复n次或更多次
- /{n,m}/ 重复n到m次
四、常用的反义字符
- \W 匹配任意不是字母,数字,下划线,汉字的字符
- \S 匹配任意不是空白符的字符
- \D 匹配任意非数字的字符
- \B 匹配不是单词开头或结束的位置
- [^x] 匹配除了x以外的任意字符
- [^aeiou] 匹配除了aeiou这几个字母以外的任意字符
五、贪婪和非贪婪
字面意思理解,就是贪婪模式是尽可能多匹配。非贪婪模式是尽量少匹配;
"*",表示匹配0次或者n次;"?",表示匹配0次或1次;
所以我们可以理解,如"+,*"为贪婪模式;加上"?",非贪婪模式,尽可能匹配少;
六、分组的概念
我们定义"()"为一个组合。
从图中我们可以看出,RegExp.$1、RegExp.$2、RegExp.$3分别对应小括号。同时我们还可以为每个组命名。
通过这种方式命名方式,我们可以通过命名方式,可以方便快捷获取想要的数据。