正则表达式
正则表达式通常被用来检索或替换某个模式的文本内容。与通配符相比,正则表达式的功能更加强大,也更加灵活,可以应用于一些非常复杂的匹配场景。
匹配 | 描述 | 示例 |
---|---|---|
^ | 匹配文本的开始字符 | 姓名以wang开头的同学,如wanghui:name regexp ‘^wang’ |
$ | 匹配文本的结束字符 | 姓名以hui结尾的同学,如wanghui:name regexp ‘hui$’ |
. | 匹配任何单个字符 | 姓名中包含w两个任意字符g的同学,如wang、wnng:name regexp ‘w..g’ |
* | 匹配任意多个任意字符 | 姓名中包含w任意多个任意字符g的同学,如wang、wg:name regexp ‘w*g’ |
+ | 匹配前面的字符1次或多次 | 姓名中包含w1~任意多个字母ag的同学,如wag、waaaag:name regexp ‘wa+g’ |
字符串 | 匹配包含指定的字符串 | 姓名中包含wang的同学,如wanghui、zhouwanghui:name regexp ‘wang’ |
p1|p2 | 匹配p1或p2 | 姓名中包含wang或li的同学,如wanghui、zhoulijun:name regexp ‘wang|li’ |
[…] | 匹配字符集合中的任意一个字符 | 姓名中包含字母a或g的同学,如wang、la、ligang:name regexp ‘[ag]’ 姓名中包含a-h之间的任意一个字母的同学:name regexp ‘[a-h]’ 姓名中包含1-5之间的任意一个数字的同学:name regexp ‘[1-5]’ 姓名中包含a-h之间的任意一个字母或1-5之间的任意一个数字的同学:name regexp ‘[a-h][1-5]’ |
[^…] | 匹配不在括号中的任意字符 | 姓名中包含除字母a和g的任意字符的同学,如wang、lijie、ligang:name regexp ‘[^ag]’ |
{n} | 匹配前面的字符串n次 | 姓名中字母a连续出现3次的同学,如waaang、ligaaang:name regexp ‘a{3}’ |
{n,m} | 匹配前面的字符串至少n次,至多m次 | 姓名中字母a至少连续出现2次,至多连续出现5次的同学,如waang、ligaaang:name regexp ‘a{2,5}’ 姓名中字母a至少连续出现2次的同学,如waang、ligaaaaaang:name regexp ‘a{2,}’ |
本站所有内容均为原创,本站保留所有权利。仅允许非商业用途的转载,但必须注明来源网站、作者、来源链接!否则,由此造成的一切后果,由转载方承担!
干货分享、技术提升、面试笔试、学习交流,欢迎关注公众号:xuesql。QQ学习交流群:209942678。