抓取并将多个正则表达式变量存储为数组

时间:2015-09-02 05:05:28

标签: python arrays regex

我试图让这段代码工作时遇到问题而且目前卡住了。

目前我从一个模式中抓取多个值。问题是我认为它将多个值存储为字符串。理想情况下,我希望能够将每个所需的值存储在一个数组中。假设每个项目和n个项目有5个值,我希望我的数组大小为5 x n。目前只是尺寸n。我的代码如下:

import re
import pickle

regex = '''<item>
<first>(.+?)</first>
<second>(.+?)</first>
...
<fifth>(.+?)</fifth>
</item>
'''

pattern = re.compile(regex)
with open('d.dat') as searchfile:
    filetext = searchfile.read()
results = re.findall(pattern, filetext)

pickle.dump(results, open('save.p', 'wb'))

1 个答案:

答案 0 :(得分:0)

object=list(re.findall(pattern,filetext)[0])

re.findall返回一个元组列表。因此,您可以将其再次转换为列表。