将字符串中的“%”替换为“\%”
Replace "%" with "\%" in string
我需要制作一个适合在 LaTeX 中使用的字符向量,因此我需要用一个反斜杠转义所有百分号。到目前为止,我所能做的就是得到 两个 反斜杠:
> text <- c("This is 60%", "This is 30%")
> gsub("%", "\%", text, fixed=TRUE)
[1] "This is 60\%" "This is 30\%"
> gsub("%", "\\%", text, fixed=TRUE)
[1] "This is 60\\%" "This is 30\\%"
正如预期的那样,如果 fixed=FALSE
使用 "\%"
作为替代我没有得到反斜杠,或者使用 `"\\%"' 作为替代得到两个反斜杠。我怎样才能得到“这是 60\%”的结果?
事实上,第一个版本已经可以运行了:
text <- c("This is 60%", "This is 30%")
gsub("%", "\%", text, fixed=TRUE)
[1] "This is 60\%" "This is 30\%"
当您在打印的字符串中看到 \%
时,第一个反斜杠只是第二个反斜杠的转义字符,即文字。您的输出字符串实际上是这样的:
This is 60\%
我需要制作一个适合在 LaTeX 中使用的字符向量,因此我需要用一个反斜杠转义所有百分号。到目前为止,我所能做的就是得到 两个 反斜杠:
> text <- c("This is 60%", "This is 30%")
> gsub("%", "\%", text, fixed=TRUE)
[1] "This is 60\%" "This is 30\%"
> gsub("%", "\\%", text, fixed=TRUE)
[1] "This is 60\\%" "This is 30\\%"
正如预期的那样,如果 fixed=FALSE
使用 "\%"
作为替代我没有得到反斜杠,或者使用 `"\\%"' 作为替代得到两个反斜杠。我怎样才能得到“这是 60\%”的结果?
事实上,第一个版本已经可以运行了:
text <- c("This is 60%", "This is 30%")
gsub("%", "\%", text, fixed=TRUE)
[1] "This is 60\%" "This is 30\%"
当您在打印的字符串中看到 \%
时,第一个反斜杠只是第二个反斜杠的转义字符,即文字。您的输出字符串实际上是这样的:
This is 60\%