如何知道完整字符串是否与模式部分匹配?

时间:2017-04-06 01:58:36

标签: python xml parsing

我想在xml中搜索文件的子字符串与任何模式不匹配的元素,然后从根目录中删除该元素。

  1. 我想知道还有其他方法来搜索完整路径的子字符串是否与其中一个模式匹配。

  2. 我想知道如何从根目录中删除匹配项。

  3. 你可以告诉我一些建议。

    这是我的示例脚本

    if __name__ == '__main__':
    
        root = ElementTree()
        root.parse('errors.xml')
        patterns = ['/cm-audio/src/main/', '/reprogram-manager/']
        for error in errors:
            file = error.find('file').text
            bMatch = False
            for p in patterns :
                if p in file :
                    bMattch = True
                    break
            if bMatch == False :
                root.remove(error) #it doesn't work.
    

2 个答案:

答案 0 :(得分:0)

if __name__ == '__main__':
    import re
    pylines='<date><Signature xmlns="http://www.w3.org/2000/09/xmldsig#">dd<SignedDataencoding="base64"><Data>cc</Data><date>'
    way1='<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">(.*?)<SignedDataencoding="base64"><Data>(.*?)</Data>'
    partens = re.compile(way1,re.S)
    items1 = re.findall(partens,pylines)
    print items1

您好,您可以在python中使用re模型,例如, 如果你想删除,你可以保存其他xml跳过,如果数学条件

答案 1 :(得分:0)

对于它的价值,你有一个命名错误。

bMattch = True

应该是

bMatch = True

如果没有,bMatch永远不会是True