gpt4 book ai didi

linux - 使用 sed 删除特定数量的数字

转载 作者:行者123 更新时间:2023-12-04 00:51:26 26 4
gpt4 key购买 nike

John, 1234567
Bob, 2839211
Alex, 2817821
Mary, 9371281
我目前正在尝试使用 sed 检索具有第二列最后 4 位数字的第一列,因此输出应如下所示:
John, 4567
Bob, 9211
Alex, 7821
Mary, 1281
这是我的命令: 's/\(.*,\)\(.*\)//' ,我认为这个命令匹配第一列直到逗号和第二列直到结束,但我不确定如何继续。

最佳答案

只需捕获每行的最后四位数字并删除任何前面的数字:

$ sed 's/[0-9]*\([0-9]\{4\}\)$/\1/' input.txt
John, 4567
Bob, 9211
Alex, 7821
Mary, 1281
如果使用支持 POSIX 扩展正则表达式的 sed 版本,可以稍微清理一下
sed -E 's/[0-9]*([0-9]{4})$/\1/' input.txt

关于linux - 使用 sed 删除特定数量的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66207956/

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