如何在Python中使用正则表达式解析文件名?

时间:2019-04-05 01:08:01

标签: regex python-3.x

我有以下文件名:aabbcc_id_1112233.png转换为以下正则表达式:[A-Za-z0-9]_id_[0-9].png其中[x]表示它可能包含>= 1的{​​{1}}个符号。如何将其放入python regexp库以返回元组:x

例如,对于(id, id_name),我想收到aabbcc22_id_123.png

用例:目前,我下划线是(id, id_name) = ('aabbcc22', 'id_123'),因为我必须使用索引,所以这是很不明智的

.split()

1 个答案:

答案 0 :(得分:0)

这将完成工作:

>>> import re
>>> get_id = re.compile('(.*)_(id_.*)[.]png')
>>> get_id.findall('aabbcc22_id_123.png')
[('aabbcc22', 'id_123')]
>>>

您可以使用以下方法将值分配给idid_name变量:

>>> [(id, id_name)] = get_id.findall('aabbcc22_id_123.png')
>>> id, id_name
('aabbcc22', 'id_123')
>>>