我在文本文件中有很多行。他们看起来像,例如:
562: DEBUG, CIC, Parameter(Auto_Gain_ROI_Size) = 4
711: DEBUG, VSrc, Parameter(Auto_Contrast) = 0
我想确定parantheses中的字符串,例如,在这种情况下输出应该 “Auto_Gain_ROI_Size”和“Auto_Contrast”。
请注意,string始终用“Parameter()”括起来。感谢。
答案 0 :(得分:4)
您可以使用正则表达式:
>>> import re
>>> s = "562: DEBUG, CIC, Parameter(Auto_Gain_ROI_Size) = 4"
>>> t = "711: DEBUG, VSrc, Parameter(Auto_Contrast) = 0 "
>>> myreg = re.compile(r'Parameter\((.*?)\)')
>>> print myreg.search(s).group(1)
Auto_Gain_ROI_Size
>>> print myreg.search(t).group(1)
Auto_Contrast
或者,没有正则表达式(虽然有点麻烦):
>>> print s.split('Parameter(')[1].split(')')[0]
Auto_Gain_ROI_Size
>>> print t.split('Parameter(')[1].split(')')[0]
Auto_Contrast