我想将paste
两个字符串放在一起,并在最后用另一个字符填充以使组合具有一定的长度。我想知道是否有paste
选项可以传递或我失踪的其他技巧?我可以通过计算每个行的长度,然后使用paste
调用rep(my_pad_character,N)
来多行执行此操作,但我想在一行中执行此操作。
Ex:填充"hi"
和"hello"
并填充"a"
以使序列长度为10.结果为"hihelloaaa"
答案 0 :(得分:8)
这是一个选项:
s1 <- "hi"
s2 <- "hello"
f <- function(x, y, pad = "a", length = 10) {
out <- paste0(x, y)
nc <- nchar(out)
paste0(out, paste(rep(pad, length - nc), collapse = ""))
}
> f(s1, s2)
[1] "hihelloaaa"
答案 1 :(得分:5)
您可以使用stringr
函数str_pad
library(stringr)
str_pad(paste0('hi','hello'), side = 'right', width = 10 , pad = 'a')