我需要从一行(xml文件)中剪切字符串并将它们保存在一个数组中

时间:2016-10-12 07:44:01

标签: python xml string list split

我有关于python的另一个问题。我需要在列表中保存一个特定的xml文件字符串(该字符串在文件中出现多次)。

def parse_xml(self):
    file_ = open("ErrorReactions_TestReport_20160831_165153.xml", "r")
    for line in file_:
        line.rstrip()
        if "result_str" in line:
            if line == "Skipped":
                "count how much test cases are skipped"
            elif  line == "Failed"
                "count how much test cases failed
            else:
                "count how much test cases passed"

这是我的代码,我的问题是我需要保存参数result_str后面的字符串并检查它们是否与“Skipped”或“Failed”匹配。如何将该字符串保存在变量中? 这些行看起来像这样:

<判定时间=“1472654306.7”result_str =“通过”结果=“2”>发电机成功运行< /判决> <判定时间=“1472654306.7”result_str =“Skipped”result =“0”final =“True”> Testgenerator未激活< /判决>

1 个答案:

答案 0 :(得分:0)

正则表达式是这样做的众多方法之一。我确信那里有很好的经过测试和验证的XML解析器。此代码将打印Passed

import re

line='''< verdict time="1472654306.7" result_str="Passed" result="2">Generator run successfully< /verdict> < verdict time="1472654306.7" result_str="Skipped" result="0" final="True">Testgenerator not active< /verdict>'''

p = re.compile(r'.*?result_str="(.*?)"')
match = p.match(line)
print(match.group(1))