1

我的 xml 代码中有多个要解析的项目。我不太确定该怎么做,任何帮助将不胜感激。下面是我的 xml 和 python 代码片段以及我想要做什么。

XML

<doc>
    <para>
        <text> /PARSEME: ABC12345/         /PARSEME: ABC98765/         /PARSEME: FGB87654/
        </text>
    </parse>
</doc>

Python代码

def get_parseme(self, document):
    match = self.getNodeContent(document.contents(), 'para', 'text', true)
    match2 = re.search(r"PARSEME:\D{3}\d{5}", match, re.M|re.I)
    if match2:
        return match2.group()
4

2 回答 2

0

您看过 ElementTree XML API 吗? http://docs.python.org/2/library/xml.etree.elementtree.html

我发现它在尝试解析 XML 文件时非常有用。尝试http://effbot.org/zone/element-index.htm获取一些额外的基本文档。

于 2013-05-30T20:00:15.273 回答
0

re.search() - 扫描一个字符串,寻找这个 RE 匹配的任何位置。

findall() - 查找 RE 匹配的所有子字符串,并将它们作为列表返回。

来自http://docs.python.org/2/howto/regex.html

这是工作示例

#!/usr/bin/env python
import re
match = ' /PARSEME: ABC12345/         /PARSEME: ABC98765/         /PARSEME: FGB87654/'
match_parse = re.findall(r"PARSEME: (\D{3}\d{5})", match, re.M|re.I)
if match_parse:
    print match2
于 2013-05-01T14:08:59.983 回答