stringi (pronounced “stringy”, IPA [strinɡi]) is THE R package for very fast, portable, correct, consistent, and convenient string/text processing in each locale and any native character encoding. The use of the ICU library gives R users a platform-independent set of functions known to Java, Perl, Python, PHP, and Ruby programmers. The package's API was inspired by Hadley Wickham's stringr package (and since 2015 stringr is based on stringi).
Package maintainer: Marek Gagolewski
Authors: Marek Gagolewski, with contributions from Bartlomiej Tartanus and many others.
This git repository also contains a custom subset of ICU4C 55.1 and ICU4C 61.1 source code which is copyrighted by Unicode and others. A binary version of the Unicode Character Database is included. For more details on copyright holders see the LICENSE file.
Homepage: http://www.gagolewski.com/software/stringi/
CRAN entry: http://cran.r-project.org/web/packages/stringi/
Online manual: http://www.gagolewski.com/software/stringi/manual/
How to access the stringi C API from within an Rcpp-based R package
System requirements: R >= 2.14, ICU4C >= 52 (refer to the INSTALL file for more details)
License: BSD-3-clause, for more details see the LICENSE file.
stringi's source code itself is released under the BSD-3-clause license, which is 100% open source compatible. Such a license has been verified as GPL-compatible by the Free Software Foundation.
The reason for using BSD-3-clause is that we include full source code of the ICU library, which has its own license. The ICU projects are covered by the ICU 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 both in free software projects and in proprietary or commercial products.
Changes: see the NEWS file.