我有一个包含各种时区日期的CSV文件,但是在将这些数据输入到测试之前,我想用unify值替换所有日期。你知道吗
日期列包含如下值,
2019-01-01 00:00:00+05:30
2018-12-31 18:30:00+00
2018-02-02 00:00:00-04:00
我想把它们换成
2019-01-01 00:00:00+00
2018-12-31 00:00:00+00
2018-02-02 00:00:00+00
如何编写正则表达式来覆盖所有可能的时区?你知道吗
我写道:
([0-9]){4}(-:?)([0-9]){2}(-:?)([0-9]){2} ([0-9]){2}:([0-9]){2}:([0-9]){2}(+-?)([0-9]){2}:([0-9]){2}
但是当它遇到2018-12-31 18:30:00+00
时失败了,我怎么处理这个案子?你知道吗
你不需要使用正则表达式,因为它似乎是直截了当的。您可以使用下面的代码段
或者
解决此问题的最佳方法是使用**python datetime**(strp和strf)
如果您想使用regex来解决它,那么按照python文档https://docs.python.org/2/library/re.html 你可以这样做
timbiegeleisen是非常正确的,您不应该为此使用regex,您应该使用Python提供的datetime API。我的答案来源于jfshere在这篇文章中的一篇优秀文章
下面是
Python 3.3+
(因为你已经用Python 3.0
标记了你的问题)对于
Python versions < 3.3
,对于aware datetime
术语
在我们的例子中,时区信息是已知的。你知道吗
相关问题 更多 >
编程相关推荐