2017-09-16 92 views
1

我有每個客戶端ID有兩個主要元素EmailInfo和PhoneInfo和文件有100k左右這樣的客戶的XML文件,但該文件在其他系統由於PhoneExt的缺失標籤失敗某些情況下。如何搜索在XML文件中的兩個連續元素

如何搜索,如果關閉標籤和電話接觸時間代碼開放標籤的電話號碼一起存在下面的另一個。

<CXToCifConversionItem> 
    <SrcSysCliId>02AC04</SrcSysCliId> 
     <CXEmailInfo> 
      <EmailAddrCntxtCd>H</EmailAddrCntxtCd> 
      <EmailAddrStatCd>CX</EmailAddrStatCd> 
      <EmailAddrNm>[email protected]</EmailAddrNm> 
      <CXEmailUpdtTmstmp>2016-11-08 11:28:41.557000</CXEmailUpdtTmstmp> 
     </CXEmailInfo> 

     <CXPhonInfo> 
      <PhonAddrCntxtCd>H</PhonAddrCntxtCd> 
      <PhonTypCd>V</PhonTypCd> 
      <PhonAreaCd>506</PhonAreaCd> 
      <PhonNum>1234567</PhonNum> 
      <PhonExtNum></PhonExtNum> 
      <PhonCntctTmCd>EVE</PhonCntctTmCd> 
      <PhonFrmtCd></PhonFrmtCd> 
      <ForgnPhonNum></ForgnPhonNum> 
      <CXPhonUpdtTmstmp>2003-01-29 17:58:06.197000</CXPhonUpdtTmstmp> 
     </CXPhonInfo> 
     </CXToCifConversionItem> 

回答

0

在記事本++可以用正則表達式搜索:

</PhonNum>\x0D\x0A\ *<PhonCntctTmCd> 

\ X0D - 匹配回車符(CR,\ R)

\ X0A - 匹配換行字符(LF,\ N)

\ * - 匹配零個或多個空格字符

需要注意的是,如果y你在Unix平臺上,你只能使用換行。

+0

\ x0D \ x0A \ * 我不確定這個表達式是什麼意思?如果你能解釋的話會很棒 – Gooks

+0

更新後的解釋 – Samik