名称 | 作用 |
---|---|
[0-9] | 匹配单个数字 |
abc | 匹配abc |
{3,5} | 3-5个字符长度 |
{n} | 匹配确定的 n 次 |
{n,} | 至少匹配n 次 |
特殊字符
名称 | 描述 |
---|---|
^ | 匹配输入字符串的开始位置 |
$ | 匹配输入字符串的结束位置 |
( ) | 标记一个子表达式的开始和结束位置 |
. | 匹配除换行符 \n 之外的任何单字符 |
+ | 前面的字符必须至少出现一次(1次或多次) |
* | 代表字符可以不出现,也可以出现一次或者多次(0次或多次) |
? | 代表前面的字符最多只可以出现一次(0次、或1次) |
[ | 标记一个中括号表达式的开始 |
{ | 标记限定符表达式的开始 |
| | 指明两项之间的一个选择 |
非打印字符
名称 | 描述 |
---|---|
\n | 匹配一个换行符 |
\r | 匹配一个回车符 |
\s | 匹配任何空白字符,包括空格、制表符、换页符等等 |
\S | 匹配任何非空白字符 |
\t | 匹配一个制表符 |
定位字符
名称 | 描述 |
---|---|
^ | 匹配输入字符串的开始位置 |
$ | 匹配输入字符串的结束位置 |
\b | 匹配一个单词边界,即字与空格间的位置 |
\B | 非单词边界匹配 |
1、*、+限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个?就可以实现非贪婪或最小匹配