元字符
.匹配除换行符以外的任意字符\w匹配字母或数字或下划线或汉字\s匹配一个空白字符,包括空格、制表符、换页符和换行符。\d匹配数字\b匹配单词的开始或结束^匹配字符串的开始$匹配字符串的结束\n匹配一个换行符\r匹配一个回车符\0nnASCII 代码中八进制代码为 nn 的字符\xnnASCII 代码中十六进制代码为 nn 的字符\unnnnUnicode 代码中十六进制代码为 nnnn 的字符[\u4e00-\u9fa5]
如果我们要查找元字符本身需要加上 \ 转义,如:\* \\w
重复
*重复零次或更多次+重复一次或更多次?重复零次或一次{n}重复 n 次{n,}重复 n 次或更多次{n,m}重复 n 到 m 次
字符类
- [a-zA-Z]
- [\w]
- [0-9]
分枝条件
|或
分组
- (\d{1,3}){3}
反义
\W匹配任意不是字母,数字,下划线,汉字的字符\S匹配任意不是空白符的字符\D匹配任意非数字的字符\B匹配不是单词开头或结束的位置[^x]匹配除了 x 以外的任意字符[^aeiou]匹配除了 aeiou 这几个字母以外的任意字符
操练
- 0\d{2}-\d{8}
- (?0\d{2})?[- ]?\d{8}|0\d{2}[- ]?\d{8}
- ((2[0-4]\d|25[0-5]|[01]?\d\d?).){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
- /(?\d{3})?([-\/.])\d{3}\1\d{4}/