正则详细教程系列可以看此链接的文章哦
https://www.cnblogs.com/poloyy/category/1796055.html
量词(限定符)
| 代码/语法 | 说明 |
|---|---|
| * | 重复 0 次或更多次 |
| + | 重复 1 次或更多次 |
| ? | 重复零次或一次 |
| {n} | 重复n次 |
| {n,} | 重复n次或更多次 |
| {n,m} | 重复n到m次 |
- 简单来说,限定符就是可以让元字符重复匹配
- 毕竟每个元字符只能匹配一个字符,如果要匹配 100 个字符,难道要写 100 个元字符吗
- 这个时候用上元字符 + 限定符就可以解决这个问题了
* 的栗子
应该是最常用的限定符了
first
| 匹配文本 | yy12菠萝 |
| 正则表达式 | \w* |
| 匹配数量 | 1 |
| 匹配结果 | yy12 |
second
| 匹配文本 | yy1_菠 |
| 正则表达式 | .1* |
| 匹配数量 | 4 |
| 匹配结果 | y、y1、_、菠 |
third
| 匹配文本 | yy_菠萝 |
| 正则表达式 | \d*\w* |
| 匹配数量 | 1 |
| 匹配结果 | yy_ |
+ 的栗子
first
| 匹配文本 | yy12菠萝 |
| 正则表达式 | \w+ |
| 匹配数量 | 1 |
| 匹配结果 | yy12 |
second
| 匹配文本 | yy1112菠萝 |
| 正则表达式 | .1+ |
| 匹配数量 | 1 |
| 匹配结果 | y111 |
记住,限定符只对它前面一个元字符生效,这里是 1 ,所以是匹配一个 1 或者多个 1
third
| 匹配文本 | yy_菠萝 |
| 正则表达式 | \d+\w+ |
| 匹配数量 | 0 |
| 原因 | \d 起码需要匹配到一个数字,但没有 |
? 的栗子
first
| 匹配文本 | yy12菠 |
| 正则表达式 | \w? |
| 匹配数量 | 6 |
| 匹配结果 | y、y、1、2、空、空 |
second
| 匹配文本 | yy_12菠萝 |
| 正则表达式 | ._?.* |
| 匹配数量 | 1 |
| 匹配结果 | yy_12菠萝 |
_ 可有可无
third
| 匹配文本 | yy_121_2菠萝 |
| 正则表达式 | \d?. |
| 匹配数量 | 7 |
| 匹配结果 | y、y、_ 、12、1_ 、2菠、萝 |
{n} 的栗子
first
| 匹配文本 | yy12菠萝测试 |
| 正则表达式 | y{2}\d{1}\w.{2} |
| 匹配数量 | 1 |
| 匹配结果 | yy12菠萝 |
second
| 匹配文本 | 13501489999 |
| 正则表达式 | ^135\d{8}$ |
| 匹配数量 | 1 |
| 匹配结果 | 13501489999 |
third
| 匹配文本 | 023-81200222、023-81200223、023-81200224 |
| 正则表达式 | 0\d{2}-\d{8} |
| 匹配数量 | 3 |
| 匹配结果 | 023-81200222 023-81200223 023-81200224 |
{n,} 的栗子
first
| 匹配文本 | poloyy |
| 正则表达式 | y{1,} |
| 匹配数量 | 1 |
| 匹配结果 | yy |
second
| 匹配文本 | 13501489999 |
| 正则表达式 | ^135\d{1,}$ |
| 匹配数量 | 1 |
| 匹配结果 | 13501489999 |
third
| 匹配文本 | 023-81200222、023-81200223、023-81200224 |
| 正则表达式 | 0\d{1,}-\d{1,} |
| 匹配数量 | 3 |
| 匹配结果 | 023-81200222 023-81200223 023-81200224 |
{n,m} 的栗子
first
| 匹配文本 | poloyy菠萝 |
| 正则表达式 | yy菠1{0,1} |
| 匹配数量 | 1 |
| 匹配结果 | yy菠 |
second
| 匹配文本 | 13501489999 |
| 正则表达式 | ^135\d{1,8}$ |
| 匹配数量 | 1 |
| 匹配结果 | 13501489999 |
third
| 匹配文本 | 023-81200222、023-81200223、023-81200224 |
| 正则表达式 | 0\d{1,2}-\d{1,8} |
| 匹配数量 | 3 |
| 匹配结果 | 023-81200222 023-81200223 023-81200224 |

京公网安备 11010502036488号