我有" some spaces variable = 7 = '0x07' some more data"
我想解析它并从“some variable = 7”获得数字7。怎么能在python中完成?
答案 0 :(得分:3)
我会使用更简单的解决方案,避免使用正则表达式。
在'='上拆分,并在您期望的位置获取值
text = 'some spaces variable = 7 = ...'
if '=' in text:
chunks = text.split('=')
assignedval = chunks[1]#second value, 7
print 'assigned value is', assignedval
else:
print 'no assignment in line'
答案 1 :(得分:2)
基本上,你创建一个类似于"variable = (\d+)"
的表达式,进行匹配,然后取第一个组,它将为你提供字符串7.然后你可以将它转换为int。
阅读上面链接中的教程。
答案 2 :(得分:0)
用于在字符串中查找数字的基本正则表达式代码段。
>>> import re
>>> input = " some spaces variable = 7 = '0x07' some more data"
>>> nums = re.findall("[0-9]*", input)
>>> nums = [i for i in nums if i] # remove empty strings
>>> nums
['7', '0', '07']
查看python.org上的documentation和How-To。