存在一个文件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
-------完毕,欢迎大伙来拍砖,一起交流。
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
-------完毕,欢迎大伙来拍砖,一起交流。