如果时间戳不存在,有没有办法将秒添加到时间戳中?

Posted

技术标签:

【中文标题】如果时间戳不存在,有没有办法将秒添加到时间戳中?【英文标题】:Is there a way to add the seconds to a time stamp if it is not present? 【发布时间】:2019-07-07 19:54:16 【问题描述】:

我有一个贯穿地图的数据文件。其中一个字段读取日期/时间戳。该地图设置为读取 MM/DD/YYYY HH:MM:SS,并且大多数情况下都可以使用。有时时间格式不正确,并且未提供 :SS。

正确数据: ,1/11/2019 13:53:46,

不正确的数据: ,1/16/2019 11:27,

这是一个旧的 AIX 5.3 机器。我尝试了一些 sed 命令和一些 awk 命令,但都没有成功。

 sed 's/[0-9][0-9]:[0-9][0-9],/[0-9][0-9]:[0-9][0-9]:00,/g' 

我需要看看 ,1/16/2019 11:27:00,

但我得到了 ,1/16/2019 [0-9][0-9]:[0-9][0-9]:00,

【问题讨论】:

试试sed -E 's/( [0-9]2:[0-9]2),/\1:00,/g'sed 's/\( [0-9][0-9]:[0-9][0-9]\),/\1:00,/g' 谢谢,sed 's/( [0-9][0-9]:[0-9][0-9]),/\1:00,/g' 完美. 【参考方案1】:

你可以使用

sed 's/\( [0-9][0-9]:[0-9][0-9]\),/\1:00,/g'

模式匹配:

\( [0-9][0-9]:[0-9][0-9]\) - 捕获组 1(该值在替换模式中用 \1 引用): - 空格 [0-9][0-9] - 两位数 : - 冒号 [0-9][0-9] - 两位数 , - 逗号

看到这个POSIX BRE regex online demo。

【讨论】:

以上是关于如果时间戳不存在,有没有办法将秒添加到时间戳中?的主要内容,如果未能解决你的问题,请参考以下文章

将浮点列添加到时间戳类型列(秒+毫秒)

electron打包报时间戳不准确错误

Laravel 4.2 - 将时间添加到时间戳

Python - 将秒数添加到时间对象

如何在 PL/SQL 中将一纳秒添加到时间戳

将 SQL Server 中 datetime 字段的默认值添加到时间戳