gpt4 book ai didi

linux - 搜索以特定模式结尾的列,然后删除该列

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:51:20 27 4
gpt4 key购买 nike

我需要在一行数字中搜索以 999 结尾的任何列,然后删除整列,同时保留任何前导数字(即 8599999.... --> 85)

数据线:

66 72 79 84 87 90 91 92 92 93 92 91 89 85999999999999999999999999999999999

期望的输出:

66 72 79 84 87 90 91 92 92 93 92 91 89 85

最佳答案

使用sed

$ s='66 72 79 84 87 90 91 92 92 93 92 91 89 85999999999999999999999999999999999'

$ # POSIX sed
$ echo "$s" | sed 's/999\{1,\}//g'
66 72 79 84 87 90 91 92 92 93 92 91 89 85

$ # sed with ERE support
$ echo "$s" | sed -E 's/999+//g'
66 72 79 84 87 90 91 92 92 93 92 91 89 85

$ # with GNU sed
$ echo "$s" | sed 's/999\+//g'
66 72 79 84 87 90 91 92 92 93 92 91 89 85

这将删除行中任意位置出现的所有 99 后跟一个或多个 9

另请参阅:Reference - What does this regex mean?

关于linux - 搜索以特定模式结尾的列,然后删除该列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38636065/

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