\b
代表单词的开头或者结尾,也就是单词和空格间的位置,目标字符串的其中一部分,空格隔开。\s
匹配任意的空白符,包括空格,制表符(Tab),换行符,中文全角空格等。\w
匹配字母或数字或下划线^
字符串开始$
字符串结束
+
:一个或者多个,相当于{1,}{2}
: 仅2次{1,4}
: 左右都包括.
:任意一个字符(除换行符之外)*
:*
前的字符可以连续出现任意次。用
\
来转义?
: 一次或没有[.?!]
匹配标点符号(.
或?
或!
)分枝条件|:表达式A|表达式B|表达式C,匹配其一即可。
(pattern)
: 匹配这个格式就可以了(?:pattern)
、和上一个差不多,匹配这个pattern格式(?=pattern)
、继续向正向找,如果这个后面跟着这个pattern格式,怎么把前面的那个字符拿出来,pattern中的内容不算匹配到的字符(?!pattern)
和3相反,后面不跟着这个pattern格式,把前面的字符拿出来
Example
- 精确查找hi:
\bhi\b
- 匹配
"hi 任意 Lucy"
:\bhi\b.*\bLucy\b
\ba\w*\b
:hello aA_______adafafaf
(匹配到的是空格后边的一段)- \d+: 匹配一个或者多个连续的数字,后续随便是什么字符都可以
- \d+$: 匹配一个或者多个连续的数字,且必须是数字结尾
\b\w{6}\b
:hello _cs___
匹配到的是空格后边的一段\(?
: 有或者没有括号- (\d{1,3}.):子表达式,可以当做一个整体
- (\d{1,3}.){3}:该子表达式重复三次