使用python从给定的字符串中提取时间戳

时间:2019-03-18 05:39:14

标签: python

我尝试了多个程序包从给定的字符串中提取时间戳,但是没有一个程序包提供正确的结果。我确实为此任务使用了dateutilsdatefinderparsedatetime等。他们提取某些日期时间,但某些格式不是全部格式,有时还会提取一些不需要的数字作为时间戳。

是否有任何python软件包可以从给定的字符串中提取datetime

假设,我有2个这样的字符串:

scala> val xorder= new order(1,"2016-02-22 00:00:00.00",100,"COMPLETED") 

Fri, 10 Jun 2011 11:04:17 +0200 (CEST)

,并且只想提取datetime。是否有任何函数可以从上述字符串中提取datetimes的两种格式。在其他情况下,格式可能会有所不同,仍然应该选择datetime字符串

2 个答案:

答案 0 :(得分:2)

您可以按以下方式使用日期时间函数strptime()

dt = datetime.strptime("21/11/06 16:30", "%d/%m/%y %H:%M")

您可以创建自己的格式并使用该功能。

答案 1 :(得分:0)

我创建了一个小型python包 datetime_extractor ,以从给定的字符串中提取时间戳。它可以从给定的字符串中提取许多日期时间格式。希望它会有用。

pip install datetime-extractor

from datetime_extractor import DateTimeExtractor
import re

samplestring1 = 'scala> val xorder= new order(1,"2016-02-22 00:00:00.00",100,"COMPLETED")'

DateTimeExtractor(samplestring1)

Out: ['2016-02-22 00:00:00.00']

samplestring2 = 'Fri, 10 Jun 2011 11:04:17 +0200 (CEST)'

DateTimeExtractor(samplestring2)

Out: ['10 Jun 2011 11:04:17']

@Allan和@Manmeet Singh,让我知道您的评论。