2017-04-05 93 views
0

我正在使用tcl腳本創建一個xml文件。在我的TCL腳本文件,我試圖用相應的實體替換特殊chatacters像用tcl腳本中的html實體替換特殊字符

return [string map [list – '"–"' ] 

但更換是不會發生的以下特殊字符,

¨ 「 ‚ < – … ¶ 」 
+0

[string map [list - 「&ndash」] – user7145588

回答

0

最低字符集替換爲HTML完成:

set html_mapping {{"} &quot; ' &apos; & &amp; < &lt; > &gt;} 
return [string map $html_mapping $inputString] 

您也可以映射其他字符,只需添加額外的e放在那個清單上。這裏有一個通用的方法來做到這一點。

# Put this between the two lines above 
foreach char [split "¨「‚…¶」" {}] { 
    scan $char %c ch_num 
    lappend html_mapping $char [format "&#%d;" $ch_num] 
} 

最好獨立地確保您傳輸的HTML被解釋爲使用UTF-8進行字符編碼。像那樣,你限制了你使用實體編碼所做的工作量。