我有一个 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'}
