2017-04-05 100 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进行字符编码。像那样,你限制了你使用实体编码所做的工作量。