gpt4 book ai didi

linux - 是否可以在 grep 正则表达式中重复匹配?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:37:21 28 4
gpt4 key购买 nike

我正在使用这个:

grep '\s[A-Z]+\s[A-Z]+\s' file.txt -Po

哪个会匹配

 ABC DE
AB AB
DEF GHIFOO

等等

我想做的是类似

grep '\s([A-Z]+)\s%1\s' file.txt -Po

只匹配

 AB AB
BC BC
DDD DDD

等等

我不知道这是否可能,更不用说如何实现了。是吗?

谢谢

最佳答案

第一个捕获的组应指定为 \1 而不是 %1:

示例 file.txt:

AA AB
AB AB
BC BC
DDD DDD
NN WN

考虑更新后的正则表达式模式:

grep -Po '\b([A-Z]+)\s\1\s*' file.txt

输出:

AB AB
BC BC
DDD DDD

奖励相反 Action 的方法:

grep -Po '\b([A-Z]+)\s(?!\1)[A-Z]+\s*' file.txt

输出:

AA AB
NN WN

关于linux - 是否可以在 grep 正则表达式中重复匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47308376/

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