上节讲了五种元字符,现在接着继续讲:
一、常用的元字符
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束
上面这个正则表达式的意思是: 以0-9之间数字开始,由于有+ 可以是一个或者多个数字 接下来为一个数字 或一个字符或者下划线结尾
二、字符转义
主要是\ 或者 \\ 添加在所修饰前面表示转义。比如\\. \\*
三、重复
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
上面表达式意思是:以一个或者0 个字符或数字开始 然后一个空格 接着2-7 个字符或者数字,最后用6个数字结束。
四、字符类
用[] 匹配没有预定义元字符的字符集合(比如元音字母a,e,i,o,u)
例如: [aeIoU]就匹配任何一个英文元音字母,[.?!]匹配标点符号(.或?或!)
注意: 第一行没有匹配成功,原因是第一行中间同时出现了)-,其实上面意思是[) -] 表示空格或者) 或者- 其中一个出现一次或者都不出现
翻译下上面正则表达式意思就是:
首先是一个转义字符\(,它能出现0次或1次(?),然后是一个0,后面跟着2个数字(\d{2}),然后是)或-或空格中的一个,它出现1次或不出现(?),最后是8个数字(\d{8})。
备注:最后例子来源于正则表达式30分钟入门