我正在使用一个小工具在Windows下查找文件类型。
TrID/32 - File Identifier v2.10 - (C) 2003-11
By M.Pontello Definitions found: 5295 Analyzing...
Collecting data from file: april_error.wmv
94.1% (.WMV/WMA) Windows Media (generic) (16018/6)
5.8% (.CAT) Microsoft Security Catalog (1000/1)
在Python中,我如何捕获(.WMV/WMA)
因为我目前得到一个错误的匹配组。
例如,re.search('\((.*?)\)', stdout).group(1)
会返回'C'
提前致谢。
答案 0 :(得分:2)
请尝试使用findall
:
a = re.findall('\((.*?)\)', stdout)
>>> print a
['C','.WMV/WMA','generic','16018/6','.CAT','1000/1']
>>> print a[1]
.WMV/WMA
或者@tobias_k建议,执行以下操作仅捕获文件扩展名匹配:
a = re.findall('\((\..*?)\)', stdout)
>>> print a
['.WMV/WMA', '.CAT']
答案 1 :(得分:1)
根据您的上述评论,这就是您所需要的:
match = re.search(r"% \([a-z.]+/[a-z.]+\)", subject, re.IGNORECASE)