r - 在 R 中将字符编码为 HTML,CRAN 方式

标签 r cran html-encode xml2 htmltools

在投票关闭重复之前,请确保它确实回答了我在这里的特定问题。问题可能看起来很相似,但我还没有找到适合我的答案。谢谢。


我正在寻找一种将任意标量字符转换为 HTML 编码形式的方法。我不想只编码 < , "等,但全文。

所以表格的文字

"<abc at def.gh>"

编码为

"&#x3c;&#x61;&#x62;&#x63;&#x20;&#x61;&#x74;&#x20;&#x64;&#x65;&#x66;&#x2e;&#x67;&#x68;&#x3e;"

我的目标是与 CRAN 编码维护者电子邮件地址的方式兼容。 所以 <不应该是 &lt;但应该是&#x3c; .同样.不应该是 &period;但应该是&#x2e; .

要在 CRAN 上查看它,您可以访问任何包的 CRAN 页面,即 https://cran.r-project.org/package=curl ,然后“查看源代码”并找到 Maintainer那里的字段。

我正在寻找一个需要尽可能少的依赖项的轻量级解决方案,它不一定要很快。

供引用,解码编码字符串的在线工具:https://onlineasciitools.com/convert-html-entities-to-ascii

最佳答案

这是一些快速的东西(没有经过彻底测试)。它的灵感来自 another SO answer .

foo <- function(x) {
  splitted <- strsplit(x, "")[[1]]
  intvalues <- as.hexmode(utf8ToInt(enc2utf8(x)))
  paste(paste0("&#x", intvalues, ";"), collapse = "")
}

all.equal(
  foo("<abc at def.gh>"),
  "&#x3c;&#x61;&#x62;&#x63;&#x20;&#x61;&#x74;&#x20;&#x64;&#x65;&#x66;&#x2e;&#x67;&#x68;&#x3e;"
)
# [1] TRUE

关于r - 在 R 中将字符编码为 HTML,CRAN 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64445978/

相关文章:

r - 无法使用 predFit 获取置信区间数据

从 R 中的字符串中删除括号和文本

r - 如何在R中的一个输入参数上最小化一个函数

r - 发布 R 包版本后,我应该如何处理 CRAN-SUBMISSION 文件

r - Debian 上的 CRAN 包出错。可以在 Windows 中查看照片,但不能在 Debian 中查看照片

javascript - MvcHtmlString 仍然编码字符

asp.net - 已进行 Html 编码的 Html 编码值

r - 显示特定颜色

r - CRAN 包存储库中是否有监视新 R 包的网站?

java - 将字符串中的所有字符转换为不同的转义格式(Java)