我想检查字符串是否以空格结尾。如果不是,我想在字符串的末尾添加一个尾随空格字符。
实际上,我检查字符串是否以grepl
的空格结尾,然后我paste
结尾处的空格。
append_space <- function(x) {
if(!grepl("(\\s)$", x))
x <- paste0(x, " ")
return(x)
}
但是,我认为我可以使用sub
函数直接执行此操作,使用!
使用负面预测,但我不知道如何使用它。
有人知道如何使用sub
吗?
答案 0 :(得分:13)
答案 1 :(得分:11)
您也可以尝试
sub(' ?$', ' ', x)
#[1] "blabla1 " "blabla2 "
,其中
x <- c("blabla1 ", "blabla2")
答案 2 :(得分:5)
我认为这种方法可行:
x <- c("blabla1 ","blabla2")
sub("(?<=([^ ])$)$", " ", x, perl=TRUE)
## [1] "blabla1 " "blabla2 "
答案 3 :(得分:4)
就像我在评论中所说,你可以试试:
sub("(.*[^ ])$","\\1 ", x)
示例强>
x <- c("blabla1 ","blabla2")
sub("(.[^ ])$","\\1 ", x)
#[1] "blabla1 " "blabla2 "