R - 让xtable将字符串中的HTML标记解释为HTML标记而不是文字

时间:2017-08-23 06:16:40

标签: html r xtable

假设我不想或不能在内部修改样式表或HTML,我怎样才能让xtable将R中字符串的一部分解释为html标签而不是文字?例如,我有:

df <- as.data.frame(c("<b>Foo</b>", "Bar", "Box"), byrow = TRUE)
library(xtable)
print(xtable(df), type = "html", include.rownames = FALSE)

我希望“Foo”变得大胆。然而,当xtable创建表时,它会打印“&lt; b&gt; Foo&lt; / b&gt;” (即它按字面解释字符串)而不是“ Foo ”。是否有选项或解决方法来自定义字符串中的标记并确保将其解释为标记?

1 个答案:

答案 0 :(得分:1)

我只是要为这个问题提供一个答案,因为在经历了一些烦躁之后,我确实有一个本身的解决方案。

df <- as.data.frame(c("<b>Foo</b>", "Bar", "Box"), byrow = TRUE)
library(xtable)
print(xtable(df), type = "html", include.rownames = FALSE, 
      sanitize.text.function = function(x){x})

这有效,但可能会产生意想不到的后果,因为您正在覆盖默认的santize.text函数,并且您似乎无法指定将sanitize.text.function = function(x){x}应用为表的特定部分的lambda函数,但是而是将其应用于整个表格。它适用于像这样简单的东西......可能不适用于所有事情。