python - 确定一个字符串可能是一个日期时间对象

标签 python regex algorithm python-2.7 datetime

如果我知道字符串表示日期时间信息的格式,那么我可以轻松地使用 datetime.datetime.strptime(s, fmt)。但是,如果事先不知道字符串的格式,是否有可能确定给定字符串是否包含可以解析为具有正确格式字符串的日期时间对象的内容?

显然,生成所有可能的格式字符串来进行详尽搜索并不是一个可行的想法。我也真的不想编写一个函数,其中硬编码了许多格式字符串。
有没有人对如何实现这一点有任何想法(也许是某种正则表达式?)?

最佳答案

fuzzyparsers呢? :

示例输入:

jan 12, 2003
jan 5
2004-3-5
+34 -- 34 days in the future (relative to todays date)
-4 -- 4 days in the past (relative to todays date)

示例用法:

>>> from fuzzyparsers import parse_date
>>> parse_date('jun 17 2010') # my youngest son's birthday
datetime.date(2010, 6, 17)

安装:

$ pip install fuzzyparsers

关于python - 确定一个字符串可能是一个日期时间对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30973346/

相关文章:

ruby - 结合所有组合以获得完整的集合

c++ - for_each 中的类方法

python - 按首字母查找列表项并将其存储在两个不同的列表中并合并到字典中

regex - 如何使用 grep 仅匹配行尾字符的奇数出现

c - C中5点加权平均的最优算法

regex - 匹配 HH :MM time format 的正则表达式

java - 捕获正则表达式类中的完整字符串

python - 多个 pandas.dataframe 到一个 csv 文件

python - 如何放入一个表单来解析用户上传的文件,然后将其显示在新的 URL 上?

python - nvcc 致命 : Value 'sm_61' is not defined for option 'gpu-architecture' error with theano