删除重复的xml标记

时间:2016-05-20 12:42:03

标签: xml ksh


每个月我都会得到很多xmls 所有xml都包含文档数据 每个文档数据为22行,例如:

   <DocumentData>
      <Header>
        <Serial>74</Serial>
        <!-- 01101010111110100: John Snow - 371521 - The North - Winterfell -->
        <HeaderName>John Snow</HeaderName>
        <HeaderDelivery1></HeaderDelivery1>
        <HeaderDelivery2></HeaderDelivery2>
        <HeaderAddress>Winterfell</HeaderAddress>
        <HeaderCity>The North</HeaderCity>
        <HeaderZIP>371521</HeaderZIP>
        <MediaType>Bill</MediaType>
        <MediaColor>White</MediaColor>
      </Header>
      <Letter>
        <LetterDate>2015.10.21.</LetterDate>
        <LetterCity>Westeros</LetterCity>
        <CardNumber>01101010111110100</CardNumber>
        <TelNumber>(301)68947885417</TelNumber>
        <Lettertype>BUSSINNESS</Lettertype>
        <LoyaltyLevel>CC</LoyaltyLevel>
      </Letter>
    </DocumentData>

不幸的是,几乎所有的xml都包含重复的数据 没有人知道,哪个标签会重复,因此一行(&#34;评论&#34;行)包含良好的数据。

所以: 这是我的xml中的一部分:(重要部分用粗体表示)

       <DocumentData>
...
            <Serial>74</Serial>
            <!-- 01101010111110100: John Snow - 371521 - The North - Winterfell -->
            <HeaderName>John Snow</HeaderName>
            <HeaderDelivery1></HeaderDelivery1>
            <HeaderDelivery2></HeaderDelivery2>
            <HeaderAddress>Winterfell</HeaderAddress>
            <HeaderCity>The North</HeaderCity>
            <HeaderZIP>371521</HeaderZIP>
            <MediaType>Bill</MediaType>
            <MediaColor>White</MediaColor>
          </Header>
...
       </DocumentData>
       <DocumentData>
...
            <Serial>75</Serial>
            <!-- 01101010111110100: John Snow - 371521 - The North - Winterfell -->
            <HeaderName>John Snow</HeaderName>
            <HeaderDelivery1></HeaderDelivery1>
            <HeaderDelivery2></HeaderDelivery2>
            <HeaderAddress>Bitterbridge</HeaderAddress>
            <HeaderCity>The North</HeaderCity>
            <HeaderZIP>371521</HeaderZIP>
            <MediaType>Bill</MediaType>
            <MediaColor>White</MediaColor>
          </Header>
...
        </DocumentData>

如您所见,第一个块(序列号:74)很好,&#39;因为注释行显示此数据...

<!-- 01101010111110100: John Snow - 371521 - The North - Winterfell -->

...标签包含相同的数据 但是下一个块(序列号:75)是错误的,因为一个标签包含错误数据:

<HeaderAddress>Bitterbridge</HeaderAddress>

我有约。每个xml中有30-40个错误,我有app。每个月70-80 xmls,所以我想发明一些东西,什么可以删除这些错误的块 我想我应该将注释行的数据与xml标签进行比较,但我不知道如何。

如果你能帮我欣赏它。

0 个答案:

没有答案