如何使用python正则表达式库从字符串中查找日期和时间?

2024-09-27 00:14:20 发布

您现在位置:Python中文网/ 问答频道 /正文

给定文本:

start_KA03MM7155_RKMS121MI4-4.21005_NEW_end, 2018-01-02 09:48:23。你知道吗

如何使用python将变量中的2018-01-02提取为020118,将另一个变量中的09:48:23提取为094823?你知道吗


Tags: 文本newstartendka03mm7155rkms121mi4
2条回答

又快又脏

date = re.sub('-', '', re.findall('\d{4}-\d{2}-\d{2}',a)[0]) # '20180102'
time = re.sub(':', '', re.findall('\d{2}:\d{2}:\d{2}',a)[0]) # '094823'

如果字符串中的日期遵循YYYY-MM-DD或YYYY-MM-DD模式, 提取日期字段的代码

import re
text = 'start_KA03MM7155_RKMS121MI4-4.21005_NEW_end, 2018-01-02 09:48:23'
result = re.search('(\d{4}-\d{2}-\d{2})', text).group(0)
print('result: ', result)

result: 2018-01-02
然后您可以根据您的情况操纵字符串以获得所需的输出

split_data = d.split('-') #split the string
date_pattern = split_data[-1] + split_data[-2] + split_data[-3][-2:]
print('date Pattern: ', date_pattern)

date Pattern: 020118
只需对regex模式做一点小小的更改,就可以节省时间

time_pattern = re.search('(\d{2}:\d{2}:\d{2})', a).group(0).replace(':', '')
print('time_pattern: ', time_pattern) 

time_pattern: 094823
简要说明:
\d查找数字
\d{4}匹配4个数字
(\d{4}-\d{2}-\d{2})查找具有(4位)-(2位)-(2位)
要了解有关regex的更多信息,可以按照official link

相关问题 更多 >

    热门问题