正则表达式只某个字符连续出现的次数

存在一个文件user.txt,内容如下:

1 fafdasfdasfd
2 fdasfdasfdsaf
3 aooooob5
4 aooooooob7
5 aoooooooob8
6 aooooooooob9
7 aoooooooooob10
8 aooooooooooob11
9 aooo1oooob

字符的重复出现次数:
x\{n\} ----x字符出现n次
x\{n,\} ----x字符至少出现n次
x\{n,m\} ----x字符出现n-m次(n<=m)

但是通过实践,grep 'o\{7\}' user.txt 会返回 4,5,6,7,8 这几行;
grep 'o\{7,9\}' user.txt 会返回 4,5,6,7,8 这几行;

如何才能返回只包含n个连续的x呢?
正确的表达式应为:grep '[^x]x\{n\}[^x]' user.txt
例如: grep '[^o]o\{7\}[^o]' user.txt

如何才能返回只包含n-m个连续的x呢?
正确的表达式应为:grep '[^x]x\{n,m\}[^x]' user.txt
例如: grep '[^o]o\{7,9\}[^o]' user.txt


-------完毕,欢迎大伙来拍砖,一起交流。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值