获取日期字符串的最佳方法(Python)
用Python从网站获取日期字符串的最佳方法是什么?
这些日期字符串可能有以下几种形式:
- 2011年4月1日
- 2011年4月2日
- 2011年4月23日
- 4/2/2011
- 04/23/2011
这是不是需要写很多正则表达式?最优雅的解决方案是什么?
2 个回答
1
在编程中,有时候我们需要把一些数据从一个地方转移到另一个地方。这就像把水从一个杯子倒到另一个杯子一样。这个过程可能会涉及到不同的工具和方法,具体取决于我们要处理的数据类型和目标。
有些时候,我们可能会遇到一些问题,比如数据格式不匹配,或者目标位置不支持我们想要的数据类型。这就像你想把热水倒进一个不能耐热的杯子里,结果杯子坏掉了。
为了避免这些问题,我们需要提前检查和确认数据的兼容性。就像在倒水之前,先确认杯子是否适合装热水一样。
总之,数据的转移需要谨慎对待,确保每一步都是安全的,这样才能顺利完成任务。
month = '(jan|feb|mar|apr|may|jun|jul|aug|sep|nov|dec)[a-z]{0,6}'
regex_strings = ['%s(\.| )\d{1,2},? \d{2,4}' % month, # Month.Day, Year
'\d{1,2} %s,? \d{4}' % month, # Day Month Year(4)
'%s \d{1,2}\w{2},? \d{4}' % month, # Mon Day(th), Year
'\d{1,2} %s' % month, # Day Month
'\d{1,2}\.\d{1,2}\.\d{4}', # Month.Day.Year
'\d{1,2}/\d{1,2}/\d{2,4}', # Month/Day/Year{2,4}
]
2
考虑一下这个库:http://code.google.com/p/parsedatetime/
在它的示例维基页面上,有几个格式可以处理,看起来和你的问题相关:
result = p.parseDateText("March 5th, 1980")
result = p.parseDate("4/4/80")
编辑:现在我注意到这其实是这个问题的重复提问,里面也推荐了同样的库!