Smart date interpretation [closed]

廉价感情. 提交于 2019-12-12 08:09:14

问题


I can't remember which application I was using, but I do recall it having really neat date parsing/interpretation.

For example, you could type in 'two days ago' or 'tomorrow' and it would understand.

Any libraries to suggest? Bonus points if usable from Python.


回答1:


See my SO answer for links to three Python date parsing libraries. The one of these most commonly used is python-dateutils but unfortunately it can't handle all formats.




回答2:


Perhaps you are thinking of PHP's strtotime() function, the Swiss Army Knife of date parsing:

Man, what did I do before strtotime(). Oh, I know, I had a 482 line function to parse date formats and return timestamps. And I still could not do really cool stuff. Like tonight I needed to figure out when Thanksgiving was in the US. I knew it was the 4th Thursday in November. So, I started with some math stuff and checking what day of the week Nov. 1 would fall on. All that was making my head hurt. So, I just tried this for fun.

strtotime("thursday, november ".date("Y")." + 3 weeks")

That gives me Thanksgiving. Awesome.

Sadly, there does not appear to be a Python equivalent. The closest thing I could find is the dateutil.parser module.




回答3:


The simple one I have seen for python is here.

It uses pyparsing and is only a small script, but it does what you ask. However, the advantage being it would be pretty easy to extend and improve on if needed. Pyparsing is relatively easy to learn as parsing goes.



来源:https://stackoverflow.com/questions/1169000/smart-date-interpretation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!