我有一个包含something.something(hexvalue1,hexvalue2)
我正在尝试将这些hexvalues转换为二进制。根据我的研究,我发现我必须在每一行中搜索十六进制值,然后将它们转换为二进制。我不知道如何在字符串中搜索包含其他变量的十六进制值。 注意:所有行都采用相同的格式。
当我这样做时:
for line in file:
string = line
string.split('(')
不会在'('
分开答案 0 :(得分:2)
在python中,所有字符串方法都返回新对象(它们具有,因为字符串是不可变类型)。 str.split
会返回list
。因此,要解析您的字符串,它将类似于:
for line in file:
left,right = line.split('(',1)
hexvalues = right.split(')')[0]
hex1,hex2 = hexvalues.split(',')
对于那些更倾向于正则表达式的人:
import re
>>> re.findall(r'\(([^)]+)',"this.is(0xffaabb,0x112214)")
['0xffaabb,0x112214']