2010-04-13 45 views
0

我有一個小問題,我有一個cdata部分的xome xml。該CDATA部分包含HTM1的片段。我想提取這個CDATA元素中的一些數據。現在,我有一個XSLT轉換,將文檔的其餘部分作爲HTMl輸出,但我只需要CDATA HTML的一小部分,而不是整個部分 - 例如我的標題標籤。這個怎麼做?ASP.NET,XSLT,從CDATA部分提取值

回答

1

XSLT不會將文本以外的任何內容讀取CDATA部分。在將其交給XSLT之前,您需要預先解析數據。你可以使用一個preparsing腳本(用Python編寫的,PHP,Perl中,VB,等等),然後做一個(但不限於)以下內容:

  • 刪除CDATA標籤,並允許XSLT處理不需要的內容
  • <title>標籤移動到XSLT入店代替CDATA標籤
  • 也許使用在Python Beautiful Soupcthulhu-inducing正則表達式 )走出CDATA部的所期望的值外,並傳遞所期望的值作爲參數給XSLT
+0

@Jweede:Srsly。正則表達式不值得一提。 – Tomalak 2010-04-14 09:15:03