6.3 Concatenate Strings

20180720 One of the most basic operations in string manipulation is the concatenate operation. R provides alternatives for doing so but a modern favourite is the %s+ operator from stringi (Gagolewski 2026).

"abc" %s+% "def" %s+% "ghi"
## [1] "abcdefghi"
c("abc", "def", "ghi", "jkl") %s+% c("mno")
## [1] "abcmno" "defmno" "ghimno" "jklmno"
c("abc", "def", "ghi", "jkl") %s+% c("mno", "pqr")
## [1] "abcmno" "defpqr" "ghimno" "jklpqr"
c("abc", "def", "ghi", "jkl") %s+% c("mno", "pqr", "stu", "vwx")
## [1] "abcmno" "defpqr" "ghistu" "jklvwx"

The tidy function for concatenating strings is stringr::str_c(). A sep= can be used to specify a separator for the concatenated strings.

str_c("hello", "world")
## [1] "helloworld"
str_c("hello", "world", sep=" ")
## [1] "hello world"

We can also concatenate strings using glue::glue().

glue("hello", "world")
## helloworld

The traditional base::cat() function returns the concatenation of the supplied strings. Numeric and other complex objects are converted into character strings.

cat("hello", "world")
## hello world
cat ("hello", 123, "world")
## hello 123 world

Yet another alternative (and there are many) is the function backports::paste(). Notice that it separates the concatenated strings with a space.

paste("hello", "world")
## [1] "hello world"

References

Gagolewski, Marek. 2026. Stringi: Fast and Portable Character String Processing Facilities. https://stringi.gagolewski.com/.


If you find this curated material useful then you can consider a donation to support it's ongoing availability and give you access to the PDF version of this book. The material has been scoped up by Generative AI without permission or any kind of recompense so do consider a donation if you can afford it. Unlike Generative AI your access to this materials is freely given. Desktop Survival Guides include Data Science, GNU/Linux, and MLHub. Books available on Amazon include Data Mining with Rattle and Essentials of Data Science. Togaware has a 30 year tradition of making popular open source software which includes sold privacy preserving productivity apps, rattle, wajig, and mlhub. Hosted by Togaware, a pioneer of free and open source software since 1984. Copyright © 1995-2022 Graham.Williams@togaware.com Creative Commons Attribution-ShareAlike 4.0