在R中将字符转换为html

在R中将字符转换为html,第1张

概述将包含非ASCII字符的字符(向量)转换为html时,R中的首选方式是什么?我会像例如转换 "ü" 至 "ü" 我知道这可以通过巧妙地使用gsub(但是有人会一劳永逸地使用它),我认为包R2HTML将会这样做,但是它并没有。 编辑:这是我最后使用的显然可以通过修改字典来扩展: char2html <- function(x){ dictionary <- data.frame( 将包含非ASCII字符的字符(向量)转换为HTML时,R中的首选方式是什么?我会像例如转换
"ü"

"&uuml;"

我知道这可以通过巧妙地使用gsub(但是有人会一劳永逸地使用它),我认为包R2HTML将会这样做,但是它并没有。

编辑:这是我最后使用的显然可以通过修改字典来扩展:

char2HTML <- function(x){  dictionary <- data.frame(    symbol = c("ä","ö","ü","Ä","Ö","Ü","ß"),HTML = c("&auml;","&ouml;","&uuml;","&Auml;","&Ouml;","&Uuml;","&szlig;"))  for(i in 1:dim(dictionary)[1]){    x <- gsub(dictionary$symbol[i],dictionary$HTML[i],x)  }  x}x <- c("Buschwindröschen","Weißdorn")char2HTML(x)
解决方法 XML使用一个insertEntitIEs方法,但该方法是内部的。因此,您可能会自行承担风险,因为不会保证在将来的版本中保持运行。

现在,您的代码可以使用

char2HTML <- function(x) XML:::insertEntitIEs(x,c("ä"="auml","ö"="ouml",…))

使用命名列表而不是data.frame感觉很优雅,但不会改变核心的东西。在引擎盖下,insertEntitIEs以与代码相同的方式调用gsub。

如果数字HTML实体在您的环境中有效,那么您可能会将所有文本转换为使用utf8ToInt的文本,然后将安全的可打印ASCII字符转回未转义的形式。这将为您节省您的实体维护字典的麻烦。

总结

以上是内存溢出为你收集整理的在R中将字符转换为html全部内容,希望文章能够帮你解决在R中将字符转换为html所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1111198.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存