在字符串开头之前涂上一层

dmv*_*nna 3 r paste sapply

所以我有一个矢量

lizt <- c("a","b","c")

> lizt
[1] "a" "b" "c"
Run Code Online (Sandbox Code Playgroud)

我可以使用sapply 每个元素粘贴字符

lizt2 <- sapply(lizt,paste0, "$", USE.NAMES=F)

lizt2
[1] "a$" "b$" "c$"
Run Code Online (Sandbox Code Playgroud)

现在,我如何使用类似的函数每个元素之前粘贴字符,所以我得到了

lizt3
[1] "^a$" "^b$" "^c$"
Run Code Online (Sandbox Code Playgroud)

mne*_*nel 11

paste并且paste0是矢量化的,所以你不需要sapply

paste0('^', lizt, '$')
## [1] "^a$" "^b$" "^c$"
Run Code Online (Sandbox Code Playgroud)


GSe*_*See 5

正如mnel 所示,您不需要sapply在这里使用,但如果您愿意,您可以创建自己的自定义函数来使用,sapply如下所示:

> sapply(lizt, function(x) paste0("^", x, "$"), USE.NAMES=FALSE)
[1] "^a$" "^b$" "^c$"
Run Code Online (Sandbox Code Playgroud)