亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 求助!xml 嵌套注釋的剔除問題 [打印本頁]

作者: raps    時(shí)間: 2015-06-04 21:23
標(biāo)題: 求助!xml 嵌套注釋的剔除問題
本帖最后由 raps 于 2015-06-05 13:17 編輯

如題,請(qǐng)問如何在“有嵌套”的情況下,正確替換掉 xml 中的所有注釋。
  1. <a>
  2. <!--
  3.     <b></b>
  4. <!--
  5.         <c>
  6.               -->
  7.          <e></e>
  8.               <!--
  9.         </c>
  10. -->
  11.     <d></d>
  12. -->
  13. </a>

  14. <e></e>

  15. <!--
  16.     <f></f>
  17. <!--
  18.         <g></g>
  19. -->
  20.     <h></h>
  21. -->
  22.     <i></i>
復(fù)制代碼
只要 <a></a> <e></e> <i></i>


如何反過來只提取“注釋”中的內(nèi)容?

  1. <a str="1">
  2. <!--
  3.     <b></b>
  4. <!--
  5.         <c>
  6.               -->
  7.          <e></e>
  8.               <!--
  9.         </c>
  10. -->
  11.     <d></d>
  12. -->
  13. </a>

  14. <e></e>

復(fù)制代碼
獲得提取注釋得到
  1. <!--
  2.     <b></b>
  3. <!--
  4.         <c>
  5.               -->
  6.          <e></e>
  7.               <!--
  8.         </c>
  9. -->
  10.     <d></d>
  11. -->
復(fù)制代碼

作者: songyc_2015    時(shí)間: 2015-06-04 21:45
回復(fù) 1# raps
請(qǐng)?zhí)峁y(cè)試文本,結(jié)果,說明需求。。。。。
作者: raps    時(shí)間: 2015-06-05 09:29
本帖最后由 raps 于 2015-06-05 09:51 編輯

回復(fù) 2# songyc_2015 [code]<a></a>
    已更新
作者: liuyu85    時(shí)間: 2015-06-05 09:36
回復(fù) 3# raps
  1. awk '/<!--/{i++}/-->/{i--}!i&&!/-->/&&!/^$/'
復(fù)制代碼

作者: raps    時(shí)間: 2015-06-05 09:52
回復(fù) 4# liuyu85


    感謝指點(diǎn),這個(gè)太棒了。
作者: songyc_2015    時(shí)間: 2015-06-05 12:05
  1. sed -n '
  2. /<!--/{
  3.     x;s#^#.#;x
  4. }
  5. /-->/{
  6.     x;s#.##;x
  7. }
  8. /<!--/!{
  9.     /-->/!{
  10.         x;/^$/{
  11.             x;/^$/!p;b
  12.         }
  13.         x
  14.     }
  15. }
  16. ' file
  17. 結(jié)果:
  18. <a>
  19. </a>
  20. <e></e>
  21.        <i></i>
復(fù)制代碼
回復(fù) 1# raps


   
作者: raps    時(shí)間: 2015-06-05 12:58
回復(fù) 4# liuyu85


    請(qǐng)問反過來呢?就是考慮有嵌套的情況下,只獲得 注釋中 的內(nèi)容
作者: liuyu85    時(shí)間: 2015-06-05 13:09
回復(fù) 7# raps
  1. awk '/<!--/{i++}/-->/{i--}i&&!/--/&&!/^$/'
復(fù)制代碼

作者: songyc_2015    時(shí)間: 2015-06-05 13:13
本帖最后由 songyc_2015 于 2015-06-05 13:15 編輯

回復(fù) 7# raps
1.sed -n '
/<!--/{
    x;s#^#.#;x
}
/-->/{
    x;s#.##;x
}
/<!--/!{
    /-->/!{
        x;/^$/!{
            x;/^$/!p;b
        }
        x
    }
}
' file





歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2