这道题没啥思路。。请问如何解决呢?任何编程语言写都可以请帮帮我谢谢,感觉是一种类型的转换,但是尝试了之后还是输出不对
可以用python来解这题,主要使用re和datetime库的相关函数。代码如下:
import datetime
import re
def conv(s,gap):
d=datetime.datetime.strptime(s,'%Y-%m-%d %H:%M:%S')
r = re.findall('^([+-]\d+)[dD]|([+-]\d+)[Hh]|([+-]\d+)[Mm]|([+-]\d+)[Ss]',gap)
print(r)
try:
day = int(r[0][0])
except:day=0
try:
hour = int(r[1][1])
except:hour=0
try:
minute = int(r[2][2])
except:minute=0
try:
second = int(r[3][3])
except:second=0
nd=d+datetime.timedelta(days=day,hours=hour,minutes=minute,seconds=second)
return nd
ts='2021-09-13 00:00:00'
n=conv(ts,'+5d-3H')
print(n)
2021-09-17 21:00:00
如有帮助,请点击一下我回答的右上方采纳按钮给予采纳~~
根据分隔符拆分出时间的各项值,以及增减的项,可以全部转换成秒后进行变化,再转换为时间
如果完全不要求语言的话可以考虑调用成型的日期库,java和python我记得都有日期库,Calendar(java)和date(python)这两个库,这些库提供了成型的时间计算,你可以直接通过调库来做