【问题标题】:XML - remove node and it's content based on patternXML - 根据模式删除节点及其内容
【发布时间】:2016-11-23 10:56:12
【问题描述】:

我想删除介于值或 21 和 22 之间的节点。此外,子内容也必须删除。我尝试使用多种方法,例如 awk 或 sed。但它只会删除该行,而将内容留在后面。 从这个http://pastebin.com/9E7Cj4tPhttp://pastebin.com/A3xScxHt

【问题讨论】:

    标签: xml awk sed xml-parsing


    【解决方案1】:

    不要使用sedawk,使用可识别XML 的工具。例如,我能够通过xsh 获得预期的输出:

    open input.xml ;
    rm //imgdir[@name=21 or @name=22] ;
    save output.xml ;
    

    【讨论】:

      【解决方案2】:

      xmlstarlet类似:

      xmlstarlet ed -d '//imgdir[@name=21 or @name=22]'
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-11-26
        • 1970-01-01
        • 1970-01-01
        • 2018-01-13
        • 2013-02-11
        • 1970-01-01
        • 2017-01-23
        相关资源
        最近更新 更多