首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >取消转义所有由html.escape处理的字符(不仅仅是&、<和>)

取消转义所有由html.escape处理的字符(不仅仅是&、<和>)
EN

Stack Overflow用户
提问于 2018-08-14 05:33:38
回答 1查看 80关注 0票数 -1

html.escape()和.unescape()是不对称的。根据the docs的说法,转义只转换&,<和>,而.unescape处理“所有命名和数字字符引用”。如何转义.unescape()取消转义的所有字符?

当前行为:

代码语言:javascript
复制
html.unescape('&deg;')
'°'
html.escape('°')
'°'

所需的行为:

代码语言:javascript
复制
html.unescape('&deg;')
'°'
html.escape('°')
'&deg;'
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-14 05:45:34

您链接到的文档链接到以下内容:

代码语言:javascript
复制
html.entities.codepoint2name

正如另一位发帖者指出的那样,你可能并不真的想转义所有的东西,因为每个字符都有实体名称,或者至少有数字转义。

但是,根据上面的映射,您当然可以创建自己的函数,该函数逐个字符地遍历字符串,并保留原始字符或将其替换为上述字典中的实体。只需选择您最希望以实体形式而不是字符形式表示的字符或字符范围。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51830894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档