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

问题描述 投票:1回答:1

我有以下文件名:aabbcc_id_1112233.png转换为以下正则表达式:[A-Za-z0-9]_id_[0-9].png其中[x]意味着它可能包含>= 1x符号。如何将它放入python regexp库中以返回元组:(id, id_name)

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

用例:目前我用下划线做qazxsw poi,因为我必须使用索引,所以这是hacky:

.split()
regex python-3.x
1个回答
0
投票

这将完成工作:

    base = filename.split('.')[0]
    return (base.split('_')[0], '_'.join(base.split('_')[1:]))

您可以使用以下方法将值分配给>>> import re >>> get_id = re.compile('(.*)_(id_.*)[.]png') >>> get_id.findall('aabbcc22_id_123.png') [('aabbcc22', 'id_123')] >>> id变量:

id_name
© www.soinside.com 2019 - 2024. All rights reserved.