正则表达式是什么? 一个解决特定问题的工具(也可以说是一种DSL);
解决了什么问题? 文本搜索,替换;
正则表达式的功能介绍:
1、使用普通字符和元字符('.','\')去匹配单个字符。
2、使用‘【】’构成字符集合,表示必须匹配该集合之一。字符集合可以通过列举,也可使用'-'来表示范围,另外还可以通过'^'给集合取非。
3、正则表达式中的元字符:
\f: 换页符 ; \n: 换行符; \r: 回车符; \t: Tab键; \v: 垂直制表符
\d:数字; \D:非数字; \w:数字+字母+下划线; \W:非\w ;\s:所有空格(包含tab,回车等); \S:非空白 ;\0:八进制; \x:16进制。
4、重复匹配:
'+':一次或多次; '*': 0次或多次; '?': 0次或1次;
{}:匹配次数或者匹配次数的范围;
懒惰型和贪婪型的区分:贪婪型会遍历整个文章找到最大匹配,懒惰型会直接返回第一个匹配。匹配次数默认为贪婪型,在贪婪型后面加个'?'就变成懒惰型了。
5、位置匹配
\b: 匹配单词边界; \B: 匹配非单词边界 ; '^': 匹配文本头; '$': 匹配文本尾; (?m): 分行匹配 ;
6、使用子表达式:通过使用'()'括起把一系列字符作为一个整体对待。
7、回溯引用:可以使用\1表示第一个子表达式匹配的值,以此类推,\0表示整个表达式匹配的值。
8、大小写转换:
\U...\E:中间全部变大写;
\L...\E:中间全部变小写;
\u:下个字符变大写;
\l:下个字符变小写;
9、前后查找
?=:向前查找;
?<=:向后查找;
?!:负向前查找;
?<!:负向后查找;
《正则表达式必知必会》
猜你喜欢
转载自ningandjiao.iteye.com/blog/1562647
今日推荐
周排行