C++ String Toolkit Library

 www.partow.net  .: Home :.   .: Links :.   .: Search :.   .: Contact :. 


The C++ String Toolkit Library (StrTk) consists of robust, optimized and portable string processing algorithms for the C++ language. StrTk is designed to be easy to use and integrate within existing code bases. Furthermore the library has a rich set of features that makes light work of any kind of string processing task.


The StrTk library has the following capabilities:

  • Generic string tokenizer and token iterators
  • Fast Split routines
  • User specified delimiter and splitter policies (simple and regex based etc.)
  • Conversions between data and hex and base-64
  • In-place removal and replace routines
  • Wild-card matching and globbing
  • Search and Replace
  • Fast token grid and Comma Separated Values (CSV and DSV) processing
  • Extremely fast String to Integer, Double and other POD conversions
  • Extensible string processing templates and algorithms (eg: combinatorics and randomizations)
  • Prefix tree and Bloom filter structures for efficient string matching and testing
  • Fast and simple-to-use binary serialization
  • Seamless integration with STL and Boost
  • Easy to use wrappers of common string processing usage patterns
  • Single header file solution requires no installation or building

C++ String Toolkit Library License

Free use of the String Toolkit Library is permitted under the guidelines and in accordance with the most current version of the "Common Public License."


The C++ String Toolkit Library implementation is compatible with the following C++ compilers:

  • GNU Compiler Collection (4.1+)
  • Intel® C++ Compiler (9.x+)
  • Clang/LLVM (1.1+)
  • PGI C++ (10.x+)
  • Microsoft Visual Studio C++ Compiler (7.1+)
  • Comeau C++ Compiler (4.3+)
  • IBM XL C/C++ (10.x+)
  • C++ Builder (XE4+)


Copyright Arash Partow