2015-10-06 58 views
-3

我有以下格式的文件:查找某些数据与正则表达式

someinformation="someNumbers"-result 

我的代码是:

re.findall('someinformation="(.*?)"-result', str(data)) 

给出的例子:

test1="3"-result 

我想得到3,但我的代码找不到任何东西。

re.findall('test1=(.*?)-result', str(data)) 

作品,但返回"3",而不是3。我觉得奇怪的是,以下:

re.findall('test1="3"-result', str(data)) 

没有任何发现任何东西。

回答

0

你有下面的代码语法错误:

re.findall('test1="3"-result'), str(data)) 

只需删除多余的括号和看到的结果,也请注意,如果你定义你的字符串就像下面你将不再需要使用str在功能所有:

>>> data='test1="3"-result' 
>>> re.findall('test1="3"-result', data) 
['test1="3"-result'] 
+0

SRY,我的错误,代码OM我的身边是正确的,我贴错了,但我的问题仍然存在 – mat

+0

@mat你定义了你的串像我?为什么使用'str'? – Kasramvd

+0

这可能是问题,数据是一个字符串列表,并通过将其转换为字符串,我认为我可以组合字符串,但这可能是一个错误。有没有办法解决这个问题? – mat