Skip to main content
 首页 » 编程设计

python之从文件名中提取名称子字符串并将其存储在 Python 中的变量中

2025年05月04日24cyq1162

我有一个 tar 文件,我可以成功读取其名称并将其存储在变量中,

tarname = 'esarchive--Mona-AB-Test226-8037affd-06d1-4c61-a91f-816ec9cb825f-05222017-4.tar' 

但是我如何从这个文件名中提取“Mona”并将其存储在一个变量中呢?

(对于名称出现在 "es-archive--{Name}-AB"之后的所有 tar 文件,tar 文件的文件名结构将与上述相同,因此返回的解决方案任何符合此格式的名称)

谢谢!

请您参考如下方法:

parse模块很适合这种东西。您可以将其视为 str.format 的倒数.

from parse import parse 
pattern = 'esarchive--{Name}-AB-{otherstuff}.tar' 
result = parse(pattern, tarname) 

演示:

>>> result = parse(pattern, tarname) 
>>> result['Name'] 
'Mona' 
>>> result.named 
{'Name': 'Mona', 
 'otherstuff': 'Test226-8037affd-06d1-4c61-a91f-816ec9cb825f-05222017-4'}