Natural Language Processing

stringi – fast and portable Unicode string processing

stringi is a comprehensive toolkit for character string processing. It provides consistent operations for manipulating, searching, transforming and comparing text across different languages, locales and character encodings.

The package uses the International Components for Unicode (ICU) libraries to provide sophisticated text processing beyond simple byte-oriented string operations. It is particularly useful when applications must handle multilingual data, perform locale-sensitive comparisons or work with text containing complex Unicode characters.

Its functions follow a consistent naming convention and operate on vectorised string data. The package also provides much of the underlying functionality used by stringr, making it an important component of the wider R text-processing ecosystem.

This is free and open source software.

Key Features

  • Supports Unicode-aware string operations across different languages and character sets.
  • Provides powerful pattern matching using ICU regular expressions.
  • Supports fixed-string matching, regular-expression matching and locale-sensitive comparisons.
  • Offers string concatenation, splitting, extraction, replacement, padding and wrapping.
  • Provides case conversion, case folding and locale-sensitive text transformations.
  • Implements Unicode normalisation using standard normal forms.
  • Supports transliteration between writing systems and character representations.
  • Offers locale-aware collation, sorting and comparison.
  • Handles conversion between character encodings and detects common encoding problems.
  • Provides string boundary analysis for words, sentences and other text units.
  • Supports random string generation and text formatting operations.
  • Includes date and time formatting through ICU facilities.
  • Works with character vectors and missing values using consistent function interfaces.
  • Cross-platform support – runs on Linux, macOS, and Windows.

Website: github.com/gagolews/stringi
Support:
Developer: Marek Gagolewski and contributors
License: BSD 3-Clause ‘New’ or ‘Revised’ License

stringi is written in C++ and C. Learn C++ with our recommended free books and free tutorials. Learn C with our recommended free books and free tutorials.


Related Software

R Natural Language Processing Tools
tidytextText mining using dplyr, ggplot2, and other tidy tools
quantedaR package for Quantitative Analysis of Textual Data
text2vecFramework with API for text analysis and natural language processing
wordcloudCreate attractive word clouds
tmText Mining Infrastructure in R
srtringiFast and portable character string processing in R
StringrString manipulation in R
UDPipeTokenization, Tagging, Lemmatization and Dependency Parsing
tokenizersConvert natural language text into tokens
spacyrR wrapper around the Python spaCy package
Word VectorsBuild and explore embedding models
syuzhetExtraction of sentiment and sentiment-based plot arcs from text
textTinyRText processing for small or big data
sentimentrDictionary based sentiment analysis
textcleanCollection of tools to clean and normalize text
TALLExplore, model, and visualize textual data
corpustoolsVarious tools for analyzing text corpora
topicmodelsInterface to LDA and CTM models
textAnalyzing natural language with transformers-based large language models
RTextToolsAutomatic text classification via supervised learning

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted