正则表达式与文本处理实用指南
正则表达式的运用
特定次数匹配
正则表达式中的 {} 元字符用于指定元素匹配的最小和最大次数,有以下四种指定方式:
| 指定符 | 含义 |
| ---- | ---- |
| {n} | 匹配前面的元素恰好 n 次 |
| {n,m} | 匹配前面的元素至少 n 次,但不超过 m 次 |
| {n,} | 匹配前面的元素 n 次或更多次 |
| {,m} | 匹配前面的元素不超过 m 次 |
例如,电话号码的正则表达式可以从 ^\(?[0-9][0-9][0-9]\)? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$ 简化为 ^\(?[0-9]{3}\)? [0-9]{3}-[0-9]{4}$ 。下面是测试示例:
[me@linuxbox ~]$ echo "(555) 123-4567" | grep -E '^\(?[0-9]{3}\)? [0-9]{3}-[0-9]{4}$'
(555) 123-4567
[me@linuxbox ~]$ echo "555 123-4567" | grep -E '^\(?[0-9]{3}\)? [0-9]{3}-[0-9]{4}$'
555 123-4567
[me@linuxbox ~]$ echo "5555 123-456
超级会员免费看
订阅专栏 解锁全文
10万+

被折叠的 条评论
为什么被折叠?



