在输入和输出中使用通配符用 SED 替换文本

问题描述 投票:0回答:1

我正在尝试清理一些数据,但我有一个日期和时间一起运行的区域。下面是我想做的任何例子,理想情况下。当然,有两位数的日期,但不会有两位数的小时。日期之前也总是有一个前导空格。

所以

Nov 86:00
变成
Nov 8, 6:00

我想对 8 和 6 使用通配符,但我不知道如何使事情正确。这就是我所拥有的:

sed -i 's/ *:/I DONT KNOW WHAT TO DO HERE/g' /tmp/showtimes.raw
linux bash sed
1个回答
0
投票

您需要括号来引入捕获组。它们从左开始编号:

sed 's/\( [0-9][0-9]\?\)\([0-9]:\)/\1, \2/'
© www.soinside.com 2019 - 2024. All rights reserved.