使用xsltproc(XSLT 1.0)我試圖從xsl-value @name屬性中轉義(「 - >轉換爲\」)內容。使用xsltproc轉義XML屬性的值
XSL:
<xsl:template match="int:signature">
"name":"<xsl:value-of select="@name" mode="text"/>",
....
原始XML:
<signature name="My "case"" />
輸出:
"name":"My "case"",
打破導致JSON
我使用海峽的嘗試:取代沒有成功。 disable-output-escaping =「yes」也沒有成功。
任何提示?
-
xsltproc的-V
使用的libxml 20706,10126的libxslt和libexslt 815
請與您的預期產出增加一個例子(也許輸入):喊這是'「name」:「xxxxx」或「\」name「:\」xxxxx \「'。還是應該改變'@ name'的內容? – 2013-04-26 15:24:12
我改進了一些解釋。是的,@name的內容應該被改變(被轉義)。 – 2013-04-26 15:51:42
xslt 1.0的一種可能性是使用遞歸模板調用來轉義引號。但是,將這個外向變量改爲撇號還不夠嗎? ''name':'我的'case'','(這應該是有效的jason) – 2013-04-26 16:49:32