回答
我不知道什麼叫「非破衝刺」的意思,但這裏是一個簡單的解決方案:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:param name="vRep" select="'—'"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="text()">
<xsl:value-of select="translate(.,'-', $vRep)"/>
</xsl:template>
</xsl:stylesheet>
當這種轉化是在任何XML文檔應用,其結果是在其中任何'-'
由任何取代被指定爲格洛巴的值相同的文檔l參數$ vRep。
例如,當這個XML文檔施加:
<a>
<b>Hi - hi</b>
- - -
<c>
<d>Wow... - cool</d>
</c>
- - -
</a>
結果是:
<a>
<b>Hi — hi</b>
— — —
<c><d>Wow... — cool</d></c>
— — —
</a>
說明:使用身份規則的,由模板重寫匹配任何文本節點,並將其中的任何'-'
字符翻譯爲中包含的字符3210 - 通過使用標準的XPath函數translate()
。
使用簡單的['translate()'](http://www.w3.org/TR/xpath/#function-translate)函數+1。 –
這看起來不錯,但我似乎無法得到它的工作..它不是拋出一個錯誤,只是沒有處理任何東西.. –
@Kirk Strobeck:這個轉換,應用於** *任何*** XML文檔,用'$ vRep'中指定的內容替換''-''。您可能試圖將其與您的代碼結合起來,這是您的問題。瞭解如何執行多遍轉換。 –
- 1. XSLT選擇文本沒有孩子
- 2. XSLT選擇所有包含文本的項目
- 3. XSLT選擇的所有文本和特定節點
- 4. UISearchBar選擇所有文本
- 5. 選擇HTML文檔的所有文本
- 6. 選擇文件中的所有文本
- 7. iPhonehone:選擇textview中的所有文本
- 8. 選擇文本中的所有圖案
- 9. 選擇CSS中的所有文本框
- 10. 使用jQuery選擇所有文本框
- 11. 選擇所有文本在片段中
- 12. 選擇懸停的所有文本?
- 13. 所有文本的jquery選擇符以
- 14. 選擇所有除了$(本)
- 15. iPad沒有選擇文本輸入內的所有文本
- 16. jQuery選擇器來選擇所有類型的文本框
- 17. XSLT刪除所有文本節點
- 18. XSLT:根據文本替換所有href
- 19. XSLT去除文本輸出中的所有選項卡
- 20. XSLT僅選擇帶有循環中文本的節點
- 21. 如何選擇monkeyrunner文本字段中的所有文本?
- 22. 如何使用Caliburn.Micro選擇文本框中的所有文本?
- 23. 如何使用jQuery選擇所有文本區和文本框?
- 24. 在調焦時選擇文本框中的所有文本
- 25. XSLT:選擇沒有子樹的所有元素
- 26. XSLT - 選擇
- 27. 選擇在XSLT
- 28. XSLT - xsl選擇
- 29. XSLT:選擇以
- 30. XSLT |選擇/當
您需要一些測試數據來顯示您試圖匹配的內容。 – TheCodeKing
當然.. https://gist.github.com/1184890 –
而當你說文字?當然,你不是指整個文件?你只是指文本節點(保留結構)? – TheCodeKing