前言
本文主要对正则表达式的一些语法进行了一些记录,有机会长期补充一下:
正则表达式基础语法
正则基础语法
元字符
元字符用来对字符串进行简单的匹配。
元字符 |
说明 |
. |
匹配除换行符以外的任意字符 |
\w |
匹配 字母、数字、下划线或汉汉字 |
\s |
匹配任意空白符 |
\d |
匹配数字 |
\b |
匹配单词的开始或结束 |
^ |
匹配字符串的开始 |
$ |
匹配字符串的结束 |
例子:
- 匹配有abc开头的字符串
- 匹配3位数字
- 配7开头的3位数字
重复限定符
元字符规则匹配的一般是单个或固定多个字符的情况,这很笨重,有时候多个字符匹配的规则是一样的,这时候就需要用重重复限定符去进行一个匹配。
重复限定符 |
说明 |
* |
重复任意次数,包括0次 |
+ |
重复1次以上 |
? |
重复0次或1次 |
{n} |
重复n次 |
{n,} |
重复n次即以上 |
{n, m} |
重复n到m次之间都匹配 |
用了重复限定符之后会优雅很多。
- 匹配11位手机号,必须以1开头
- 匹配a开头,x结尾,中间是12-18位数字的字符串
- 匹配a开头,0个或多个b结尾的字符串
分组
使用括号来对一组字符进行匹配。
- 匹配xy开头的任意数量的字符
转义
防止正则符号和字符符号冲突。
- 匹配任意数量(ab)
条件或和区间
用|
表示或,[]表示区间([0-9][a-z][A-Z][156]等,[]只能匹配一个字符)
1 2
| ^((13[0-2])|(15[56])|(18[5-6])|145|176)\d{8}$ ^(130|131|132|155|156|185|186|145|176)\d{8}$
|
前断言和后断言
先不写了,有点事,以后再说。