library(stringr)
str_length(c("ab", "R for data science", NA))
#>[1] 2 18 NA
要想组合两个或更多字符串,可以使用 str_c() 函数:
str_c("x", "y", "z")
#>[1] "xyz"
可以使用 sep 参数来控制字符串间的分隔方式:
str_c("x", "y", sep = ", ")
#>[1] "x, y"
str_c() 函数是向量化的,它可以自动循环短向量,使得其与最长的向 量具有相同的长度:
str_c("prefix-", c("a", "b", "c"), "-suffix")
#> [1] "prefix-a-suffix" "prefix-b-suffix" "prefix-c-suffix"
要想将字符向量合并为字符串,可以使用 collapse() 函数:
str_c(c("x", "y", "z"), collapse = ", ")
#> [1] "x, y, z"
可以使用 str_sub() 函数来提取字符串的一部分。除了字符串参数外,str_sub() 函数中还有 start 和 end 参数,它们给出了子串的位置(包括 start 和 end 在内):
x <- c("Apple", "Banana", "Pear")
str_sub(x, 1, 3)
#> [1] "App" "Ban" "Pea"
负数表示从后往前数
str_sub(x, -3, -1)
#> [1] "ple" "ana" "ear"
str_to_upper(c("a", "b"))
#>[1] "A" "B"
str_sub(x, 1, 1) <- str_to_lower(str_sub(x, 1, 1)) x
#> [1] "apple" "banana" "pear"