我可以做以下事情:
> paste0("cat.", 1:10, ".jpg")
给出:
[1] "cat.1.jpg" "cat.2.jpg" "cat.3.jpg" "cat.4.jpg" "cat.5.jpg" "cat.6.jpg" "cat.7.jpg" "cat.8.jpg"
[9] "cat.9.jpg" "cat.10.jpg"
如何填充paste0()
以生成
[1] "cat.01.jpg" "cat.02.jpg" "cat.03.jpg" "cat.04.jpg" "cat.05.jpg" "cat.06.jpg" "cat.07.jpg" "cat.08.jpg"
[9] "cat.09.jpg" "cat.10.jpg"
在一天结束时,我想做的是让序列直到1000
paste0("cat.", 1:1000, ".jpg")
获取类似cat.0001.jpg
的字符串。
答案 0 :(得分:2)
您可以尝试使用stringr's
str_pad
,如下所示:
library(stringr)
paste0("cat.", str_pad(1:10,width=2,side="left", pad=0), ".jpg")
要使其可扩展到1000,您可以选择将str_pad的第二个参数(宽度)更改为4.
?str_pad
在字符串,宽度和填充上进行矢量化。
用法
str_pad(字符串,宽度,边= c("左","右","两者"),pad ="&#34 ;)
<强>输出强>:
> paste0("cat.", str_pad(1:10,2,pad=0), ".jpg")
[1] "cat.01.jpg" "cat.02.jpg" "cat.03.jpg"
[4] "cat.04.jpg" "cat.05.jpg" "cat.06.jpg"
[7] "cat.07.jpg" "cat.08.jpg" "cat.09.jpg"
[10] "cat.10.jpg"
您也可以选择使用stringr::str_c
代替paste0