我有一些正则表达式,我想把它们放到我的R包文档中:
this <- c("letter-number"="^([a-zA-Z]{1}[0-9]+)")
当我把它放入roxygen
文档字符串作为
#' @details This is the regex schema that I use: "`r this`".
#' @export
this <- c("letter-number"="^([a-zA-Z]{1}[0-9]+)")
它被渲染为^([a-zA-Z]10-9+),即吸收了花括号/对花括号内的表达式求值,看编译后的.Rd
文件,我怀疑是帮助文件渲染的问题,就像在那个文件中,该行显示为"^([a-zA-Z]{1}\link{0-9}+)"
(尽管roxygen
将方括号转换为\link{}
指令是有问题的;当我用?this
查看帮助文件时,它会被忽略)。
什么是逐字显示这种字符串的适当方法?
> packageVersion("roxygen2")
[1] ‘7.1.2’
> packageVersion("devtools")
[1] ‘2.4.3’
> packageVersion("glue")
[1] ‘1.6.2’
(我现在只能使用过时的R 4.1.2。
1条答案
按热度按时间n3h0vuf21#
虽然这 * 可能 * 是
roxygen2
中的一个bug(或者它对rmarkdown
的使用),但如果你能容忍一个helper-function,那么我们可以这样做:使用
devtools::document()
渲染(除其他方式外,效果相同)会在man/this.Rd
文件中产生以下结果:其呈现为
对于上下文,R-4.2.3 in emacs/ESS with