gpt4 book ai didi

python - 我可以在 datetime.strptime 格式中使用正则表达式吗?

转载 作者:行者123 更新时间:2023-11-28 21:05:55 25 4
gpt4 key购买 nike

我有包含尾随时间戳的字符串值。我想我可以使用带有正则表达式模式的 strptime 来提取它们。

喜欢:

from __future__ import print_function

from datetime import datetime
# this here works
input_with_ts = "20170410_1133"
print(datetime.strptime(input_with_ts, '%Y%m%d_%H%M'))
# but this is how things really look like
input_with_ts = "foo_bar_D31_848_20170410_1133"
print(datetime.strptime(input_with_ts, 'foo_bar_.*_.*_%Y%m%d_%H%M'))

给予:

2017-04-10 11:33:00
Traceback (most recent call last):
File "test.py", line 9, in <module>
print(datetime.strptime(input_with_ts, 'foo_bar_.*_.*_%Y%m%d_%H%M'))
File "/usr/lib/python2.7/_strptime.py", line 332, in _strptime
(data_string, format))
ValueError: time data 'foo_bar_D31_848_20170410_1133' does not match format 'foo_bar_.*_.*_%Y%m%d_%H%M'

只是想知道:这是否可能 - 将正则表达式模式放入该格式字符串中?如果不是,让我到达那里的直接规范方法是什么?

最佳答案

不,你不能,只支持固定文本(所以文字)和日期时间组件。

先提取日期时间部分;您当然可以为该任务 使用正则表达式。 在您的示例中不需要这样做,因为日期时间部分是末尾的固定宽度文本 block :

datetime.strptime(input_with_ts[-13:], '%Y%m%d_%H%M')

关于python - 我可以在 datetime.strptime 格式中使用正则表达式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43371940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com