gpt4 book ai didi

javascript - HTML 实体十六进制字符引用不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 10:00:02 25 4
gpt4 key购买 nike

我正在尝试转义和取消转义 html 实体。对于转义,我已经使用了下面的代码,它工作得很好。

function reformat(string) {
var entityMap = {
'&' : '&',
'<' : '&lt;',
'>' : '&gt;',
'"' : '&quot;',
"'" : "'",
'/' : '/',
'`' : '&#x60;',
'=' : '=',
'■' : '&#x25a0;',
'▲' : '&#x25b2;'
};

if (string) {
return String(string).replace(/[&<>"'`=■▲\/]/g,
function fromEntityMap(s) {
return entityMap[s];
});
}

};

对于 Unescaping,我尝试过使用 JSOUP Parser,

        Jsoup.parse(html).text();
boolean strictMode = true;
html = org.jsoup.parser.Parser.unescapeEntities(html, strictMode);

HTMLUtils:org.springframework.web.util.HtmlUtils

html = HtmlUtils.htmlUnescape(html);

Uebescape:org.unbescape.html.HtmlEscape

html = HtmlEscape.unescapeHtml(html);

此外,我尝试过使用 commons-lang 和 commons-text。尽管如此,我还是没有运气只转义这两个字符。

     '■' : '&#x25a0;',
'▲' : '&#x25b2;',

注意:我使用的是十六进制字符引用。

最佳答案

我在类路径中遇到冲突,有两个不同版本的 JSOUP 1.6.0 和 JSOUP 1.11.3。我刚刚删除了 jsoup1.6.0,一切都开始工作了。

We dont have org.jsoup.parser.Parser.unescapeEntities(html, true) method in Jsoup-1.6.0 version.

关于javascript - HTML 实体十六进制字符引用不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53636588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com