我想检查字符串是否以空格结尾.如果不是,我想在字符串的末尾添加一个尾随空格字符.
实际上,我检查字符串是否以空格结尾,grepl然后我paste在末尾有一个空格.
append_space <- function(x) {
if(!grepl("(\\s)$", x))
x <- paste0(x, " ")
return(x)
}
Run Code Online (Sandbox Code Playgroud)
但是,我认为我可以直接使用该sub功能,使用负面前瞻,!但我不知道如何使用它.
有谁知道我怎么做sub?
Wik*_*żew 13
您可以sub在替换部分中使用捕获组和反向引用:
sub("(\\S)$", "\\1 ", x)
Run Code Online (Sandbox Code Playgroud)
\S手段non-whitespace.
见演示
akr*_*run 11
你也可以试试
sub(' ?$', ' ', x)
#[1] "blabla1 " "blabla2 "
Run Code Online (Sandbox Code Playgroud)
哪里
x <- c("blabla1 ", "blabla2")
Run Code Online (Sandbox Code Playgroud)
我认为这种方法可行:
x <- c("blabla1 ","blabla2")
sub("(?<=([^ ])$)$", " ", x, perl=TRUE)
## [1] "blabla1 " "blabla2 "
Run Code Online (Sandbox Code Playgroud)