2009-10-12 181 views
6

我需要能夠替換某些字符,以便我可以將它們用作CSS類。替換字符串中的多個字符(XSLT)

我有類似的字符串,類(名字),類&名稱,其他人是無效的CSS類(據我所知)。

如何使用替換函數替換多個字符,

E.g.

translate(className, ' ','') (would replace a space) 

但是有可能這樣做多個字符?

翻譯似乎並不與&

實例工作

XML

<title>Mary & the Wolf<title> 

XSLT

<xsl:value-of select="translate(title, ' &','')"/></xsl:attribute> 

所以我想輸出是:

MarytheWolf 

但是目前我在&這個角色出現錯誤。

回答

7

translate()作品人物明智:

translate(className, ' &#?!','') // would remove any character in the string #1 

translate(className, ' &#?!','_____') // would replace any character 
             // in the string #1 with '_' 
+0

謝謝,似乎是一個好主意,用char代替而不是沒有。 – CLiown 2009-10-12 14:27:09

+0

XSLT的代碼是什麼? ive試過&在翻譯,但拋出一個錯誤? – CLiown 2009-10-12 14:36:51

+0

'&'是&符號的XML轉義序列。這不是說XSLT或XPath需要它,而是XML本身。 – Tomalak 2009-10-12 14:42:18

1

你最那裏的方式:

翻譯( 'ABCD', 'CBDA',「CBDA ')

會給'ABCD'。