gpt4 book ai didi

regex - 如何用交替进行grep

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:18:14 25 4
gpt4 key购买 nike

我想 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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com