在 tcl 脚本中将特殊字符替换为 html 实体



我正在使用tcl脚本创建一个xml文件。在我的 tcl 脚本文件中,我正在尝试用相应的实体替换特殊的聊天者,例如

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

但是以下特殊字符不会发生替换,

¨ “ ‚ < – … ¶ ”

要替换 HTML 的最小字符集如下:

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

您也可以映射其他角色,只需将额外的元素添加到该列表中即可。这是执行此操作的一般方法

# 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 进行字符编码。这样,您可以限制与实体编码相关的工作量。

最新更新