元字符和修饰符
1.句点.元字符可以匹配任何字母字符以及数字,适用范围最 广
2.\w 元字符匹配英文字母字符、数字和下划线
3.\W元字符匹配\w不匹配的字符
4.\d元字符匹配数字,\D匹配非数字
5.\s是针对性最差的元字符,能够匹配任何单个的空格符、制表符、换行符
6.\S匹配\s不能匹配的字符
7.\t匹配一个制表符
8.\n匹配一个换行符
9.转义字符用“\”
字符类
就像[0-9]、[a-z]、[wehuvbdhv]这些称为字符类。
字符串、行和词边界
1.^ 元字符,匹配一个字符串或一行的开始位置
2.$ 表示匹配一个字符串或一行的结束位置
3.< 和 > 匹配一个单词的开始和结束位置
4.\b 匹配一个单词的边界(出现在一个单词的开始或结束位置)
正则表达式中的圆括号
正则表达式中的圆括号的作用是对字符进行分组,例如United States,正则表达式可以表示成 (United) () (States)
圆括号和限定符
例如:(A\d){2}与A\dA\d具有一样的含义
匹配原括号直接量
例如:tel.123 456 7890 (home)
要匹配其中的(home),则要对括号用转义符:(home)
交替选择
使用圆括号:( | )
但一般选择使用字符类[ ],匹配率会更高
向前查找和向后查找
向前查找
如何理解呢?
比如“只有当单词star后跟单词training时才匹配star”,这种就是向前查找
(?=…)肯定式向前查找
(?<=…)肯定式向后查找
例子:^ [A-Za-z]{2}(?=\d\d)表示向前查找,只有后面是两个数字才能匹配两个字母。^表示一行开始的位置。