网站首页 > 精选文章 / 正文
在正则表达式中,量词(也称为限定符)用于指定前面的字符、字符集或子表达式出现的次数。以下是常见的量词及其用法:
1.`*`(零次或多次)
o 含义:匹配前面的字符或表达式零次或多次。
o 示例:
o 正则表达式:`a*`
o 匹配内容:`""`(空字符串)、`"a"`、`"aa"`、`"aaa"`等。
o 正则表达式:`[0-9]*`
o 匹配内容:`""`(空字符串)、`"0"`、`"12"`、`"345"`等。
2.`+`(一次或多次)
o 含义:匹配前面的字符或表达式一次或多次。
o 示例:
o 正则表达式:`a+`
o 匹配内容:`"a"`、`"aa"`、`"aaa"`等,但不匹配空字符串。
o 正则表达式:`[0-9]+`
o 匹配内容:`"0"`、`"12"`、`"345"`等,但不匹配空字符串。
3.`?`(零次或一次)
o 含义:匹配前面的字符或表达式零次或一次。
o 示例:
o 正则表达式:`a?`
o 匹配内容:`""`(空字符串)、`"a"`。
o 正则表达式:`ab?c`
o 匹配内容:`"ac"`、`"abc"`。
4.`{n}`(恰好n次)
o 含义:匹配前面的字符或表达式恰好n次。
o 示例:
o 正则表达式:`a{3}`
o 匹配内容:`"aaa"`。
o 正则表达式:`[0-9]{4}`
o 匹配内容:`"1234"`、`"5678"`等,但不匹配少于4位或超过4位的数字。
5.`{n,}`(至少n次)
o 含义:匹配前面的字符或表达式至少n次。
o 示例:
o 正则表达式:`a{2,}`
o 匹配内容:`"aa"`、`"aaa"`、`"aaaa"`等。
o 正则表达式:`[0-9]{3,}`
o 匹配内容:`"123"`、`"4567"`等,但不匹配少于3位的数字。
6.`{n,m}`(至少n次,最多m次)
o 含义:匹配前面的字符或表达式至少n次,最多m次。
o 示例:
o 正则表达式:`a{2,4}`
o 匹配内容:`"aa"`、`"aaa"`、`"aaaa"`,但不匹配`"a"`或`"aaaaa"`。
o 正则表达式:`[0-9]{1,3}`
o 匹配内容:`"1"`、`"12"`、`"123"`,但不匹配`""`或`"1234"`。
7.贪婪与非贪婪量词
o 贪婪量词:默认情况下,量词(如`*`、`+`、`{n,m}`等)是贪婪的,会尽可能多地匹配字符。
o 示例:正则表达式`a.*b`在字符串`"a123b456b"`中会匹配`"a123b456b"`。
o 非贪婪量词:在量词后面加上`?`,表示非贪婪匹配,会尽可能少地匹配字符。
o 示例:正则表达式`a.*?b`在字符串`"a123b456b"`中会匹配`"a123b"`。
8.特殊情况
o `*?`、`+?`、`??`:分别对应非贪婪的零次或多次、一次或多次、零次或一次。
o `{n,m}?`:非贪婪的量词,匹配尽可能少的字符。
Tags:正则表达式匹配任意字符
猜你喜欢
- 2025-03-06 超级厉害的提取函数——REGEXP正则函数(关于汉字部分)
- 2025-03-06 Python 正则表达式:从基础到应用
- 2025-03-06 用火出圈的DeepSeek,学习REGEXP正则函数!
- 2025-03-06 浅学python | 正则表达式集锦
- 2025-03-06 3 分钟了解正则表达式在 Python 中的用法
- 2025-03-06 史上最全正则详解
- 2025-03-06 java正则-取出指定字符串之间的内容
- 2025-03-06 正则中的字符集
- 2025-03-06 深入解析MySQL:查询的正则匹配
- 2025-03-06 如何使用正则表达式和 Python 匹配不以模式开头的字符串