作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想 grep 包含逗号后跟四个相同数字后跟逗号后跟字母字符的行。
我试过了
grep -E ,'1111|2222|3333|4444|5555|6666|7777|8888|9999',[[:alpha:]] file
这似乎与我描述的不符。问题是它似乎没有正确处理逗号和 [[:alpha:]]。
你怎么能做到这一点?
最佳答案
这是因为您的交替没有按照您期望的方式应用。要使其按照您的意愿运行,您需要使用组:
grep -E ,'(1111)|(2222)|(3333)|(4444)|(5555)|(6666)|(7777)|(8888)|(9999)',[[:alpha:]] file
或者,这可以使用 backref 更简洁地表达:
grep -E ,'([[:digit:]])\1{3},[[:alpha:]]' file
这基本上意味着相同的数字 4 次。但是,这也包括 0,因此它可能对您有帮助,也可能没有帮助。
编辑:
当然...如果只是 1-9,你可以
grep -E ,'([1-9])\1{3},[[:alpha:]]' file
关于regex - 如何用交替进行grep,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18592503/
我是一名优秀的程序员,十分优秀!