Python 如何在OptPass中获取用户的输入?
我有以下文件:Python 如何在OptPass中获取用户的输入?,python,regex,Python,Regex,我有以下文件: System Configuration Utility Version 14.1 Build 19 Copyright (c) 2017 Intel Corporation System BIOS and FW Versions: BIOS Version............. SE3.4 ME Firmware Version...... 2.01 BMC Version Op Code................. 1.2.7Q SDR Version..
System Configuration Utility Version 14.1 Build 19
Copyright (c) 2017 Intel Corporation
System BIOS and FW Versions:
BIOS Version............. SE3.4
ME Firmware Version...... 2.01
BMC Version
Op Code................. 1.2.7Q
SDR Version.............. SDR Package 0.1
我想将其捕获并存储在dict中,如下所示:
d ={'BMC Version': '1.2.7Q',
'SDR Version': '0.1',
'ME Firmware Version': '2.01'
}
如何使用regex和python实现这一点
现在我的方法是这样硬编码,但我不想硬编码:
SDR Package \d+.\d+
正则表达式:
详情:
非捕获组(?:)
或|
匹配列表中的单个字符[]
在一次和无限次之间匹配+
import re
d = {}
for match in re.findall(r'((?:ME Firmware|BMC|SDR) Version)\D+([0-9.A-Z]+)', text):
d[match[0]] = match[1]
输出:
{'ME Firmware Version': '2.01', 'BMC Version': '1.2.7Q', 'SDR Version': '0.1'}
您不想硬编码是什么意思?你想要什么样的解决方案?这个问题与optpasse有什么关系?optpasse和你的问题到底有什么关系?