【正则】基础知识
一、元字符 . 除换行符的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束
二、反义 \W 匹配不是字母、数字、下划线、汉字的字符 \S 匹配不是空白符的字符 \D 匹配非数字的字符 \B 匹配不是单词开头或结束的位置 [^x] 匹配除了x以外的任意字符 [^aeiou] 匹配除了aeiou这几个字母以外的任意字符
三、正则表达式的重复 1) * 重复0~无穷大 2) + 重复1~无穷大 3) ? 重复0或1次 4) {n} 重复n次 5) {n,} 重复n~无穷大 6) {n,m} 重复n~m次
四、分支条件 | 0\d{2}-\d{8}|0\d{3}-\d7
五、字符类 [0-9] == \d [a-z0-9A-Z] == \w
六、分组 使用()进行分组
七、贪婪与懒惰 贪婪 .* a.b (aabab) -> aabab 懒惰 .? a.*?b (aabab) -> aab
*? 重复任意次,尽可能少重复 +? 重复1次或多次,尽可能少重复 ?? 重复0次或1次,尽可能少重复 {n,m} 重复n到m次, 尽可能少重复 {n,} 重复n次以上,尽可能少重复