正则表达式
正则表达式中常用的元字符(metacharacter)
. 匹配任意不是换行符的字符
\b 单词的开始或者结束
\w 数字或者字母或者下划线或者汉字
\d 数字
\s 任意空白字符
^ 字符串的开始
$ 字符串的结束
正则表达式中常用的限定符
* 重复零次或者更多次
+ 重复一次或者更多次
? 重复零次或者一次
{n} 重复n次
{n,m} 重复n到m次
{n,} 重复n次或者更多次
正则表达式中常用的反义
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符
贪婪与懒惰
默认的匹配规则是贪婪:
当正则表达式中包含能接受重复的限定符时,通常的行为是(在使整个表达式能得到匹配的前提下)匹配尽可能多的字符
懒惰的匹配:尽可能少的匹配
设置方式:在表达式的末尾加上“?”
懒惰限定符
*? 重复任意次,但尽可能少重复
+? 重复1次或更多次,但尽可能少重复
?? 重复0次或1次,但尽可能少重复
{n,m}? 重复n到m次,但尽可能少重复
{n,}? 重复n次以上,但尽可能少重复