如何删除字符串的日期时间部分



例如,我有一个字符串"明天上午9点之前做某事"。我正在使用解析日期时间模块来解析字符串并从中获取日期时间对象。我是根据解析日期时间文档执行此操作的:

from datetime import datetime
import parsedatetime as pdt # $ pip install parsedatetime
cal = pdt.Calendar()
string = "do something by tomorrow 9am"
time_struct = cal.parse(string)
datetimeobject = datetime(*time_struct[0][:6])

但是,我想知道它解析了字符串的哪一部分以获取 datetime 对象,因为我也想从字符串中删除日期部分,以获得"做某事"。 python-dateutil模块似乎可以做到这一点,但它不会解析像"明天"或"2小时后"这样的日期/时间。

有没有办法做到这一点?输入日期时间可以有多种格式。

快速浏览文档 (https://bear.im/code/parsedatetime/docs/index.html),您可以看到:

nlp(self, inputString, sourceTime=None)

如果您在条目中使用它:

cal.nlp(string)

您会发现:

((datetime.datetime(2016, 7, 11, 9, 0), 3, 16, 28, 'tomorrow 9am'),)

也许这将帮助您在自己的字符串中找到字符串的解析部分,并且您将能够进行适当的操作来获取所需的内容。

相关内容

  • 没有找到相关文章

最新更新