Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Failed to load latest commit information.
Latest commit message
Commit time
May 15, 2023 12:01
June 1, 2023 21:17
April 29, 2021 14:41
May 15, 2023 10:44
May 15, 2023 10:44
May 15, 2023 09:42
June 1, 2023 21:17
October 2, 2021 12:21
June 17, 2021 18:57
May 5, 2021 12:01
August 8, 2022 19:29
August 8, 2022 15:01
May 15, 2023 09:42
September 8, 2022 10:59
December 31, 2022 12:20
December 31, 2022 12:38
May 15, 2023 10:44
December 31, 2022 12:20
May 1, 2021 10:01
December 31, 2022 12:20
December 31, 2022 12:20


Fast and Portable Character String Processing in R (with the Unicode ICU)

Build Status RStudio CRAN mirror downloads RStudio CRAN mirror downloads RStudio CRAN mirror downloads

A comprehensive tutorial and reference manual is available at

Check out stringx for a set of wrappers around stringi with a base R-compatible API.

stringi (pronounced “stringy”, IPA [strinɡi]) is THE R package for string/text/natural language processing. It is very fast, consistent, convenient, and — thanks to the ICU – International Components for Unicode library — portable across all locales and platforms.

Available features include:

  • string concatenation, padding, wrapping,
  • substring extraction,
  • pattern searching (e.g., with Java-like regular expressions),
  • collation and sorting,
  • random string generation,
  • case mapping and folding,
  • string transliteration,
  • Unicode normalisation,
  • date-time formatting and parsing,

and many more.

Package Maintainer: Marek Gagolewski

Authors and Contributors: Marek Gagolewski, with contributions from Bartłomiej Tartanus and many others.

The package's API was inspired by that of the early (pre-tidyverse; v0.6.2) version of Hadley Wickham's stringr package (and since the 2015 v1.0.0 stringr is powered by stringi).


Citation: Gagolewski M., stringi: Fast and portable character string processing in R, Journal of Statistical Software 103(2), 2022, 1–59,

CRAN Entry:

System Requirements: R >= 3.1, ICU4C >= 55 (refer to the INSTALL file for more details)

License: stringi's source code is distributed under the open source BSD-3-clause license, for more details see the LICENSE file.

This git repository also contains a custom subset of ICU4C source code which is copyrighted by Unicode, Inc. and others. A binary version of the Unicode Character Database is included. For more details on copyright holders see the LICENSE file. The ICU project is covered by the Unicode license — a simple, permissive non-copyleft free software license, compatible with the GNU GPL. The ICU license is intended to allow ICU to be included in free software projects as well as in proprietary or commercial products.

Changes: see the NEWS file.

How to access the stringi C++ API from within an Rcpp-based R package