定义正则表达式描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中提取出符合某个条件的子串等
组成 正则表达式有普通字符和特殊字符(元字符组成)
普通字符
普通字符由未显示指定为元字符的打印和非打印字符组成,包含所有的大小写字母字符,所有数字标点符号等
非打印字符
字符 |
含义 |
\cx |
匹配由x指明的控制字符 |
\f |
匹配一个换页符 |
\n |
匹配换行符 |
\r |
匹配回车符 |
\s |
匹配任何空白字符 |
\S |
匹配任何非空白字符 |
\t |
匹配一个水平制表符 |
\v |
匹配一个垂直制表符 |
特殊字符
特殊字符 |
说明 |
$ |
匹配输入字符串的结尾位置。若设置了m标志则也匹配回车和换行 |
() |
标记一个字表达式的开始和结束位置 |
* |
匹配前面字表达式零次或多次 |
+ |
匹配前面字表达式一次或多次 |
. |
匹配出换行符之外的任何单字符 |
[ |
标记一个中括号表达式的开始 |
? |
匹配前面字表达式零次或一次 |
\ |
转义 |
^ |
匹配输入字符的开始位置,在方括号中表示不接受该字符集合 |
{ |
标记限定符表达式的开始 |
| |
指明两项之间的一个选择 |
限定符
字符 |
描述 |
* |
匹配零次或多次 |
+ |
匹配一次或多次 |
? |
匹配零次或一次 |
{n} |
匹配n次 |
{n,} |
至少匹配n次 |
{n, m} |
匹配n到m次 |