C++ String Toolkit Library [INTRODUCTION] 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. [CAPABILITIES] 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 [COPYRIGHT NOTICE] Free use of the String Toolkit Library is permitted under the guidelines and in accordance with the most current version of the MIT License. http://www.opensource.org/licenses/MIT [DOWNLOADS & UPDATES] All updates and the most recent version of the C++ String Toolkit can be found at: (1) http://www.partow.net/programming/strtk/index.html (2) http://strtk.partow.net Code repository: https://github.com/ArashPartow/strtk [INSTALLATION] (1) strtk.hpp should be placed in a project or system include path (e.g: /usr/include/). (2) If the Boost libraries (random, regex, lexical_cast etc) are not available or it not wished they be used then the following preprocessor directive needs defining, either in code before strtk.hpp is included or as a compiler switch: (*) strtk_no_tr1_or_boost (3) It is advisable to have either Boost installed or a TR1 compliant C++ standard library. Installation of Boost on: (*) Win32 : http://www.boostpro.com/download (*) Ubuntu : boost packages via apt-get or synaptic (*) Fedora : yum -y install boost-devel (*) http://www.boost.org/doc/libs/release/more/getting_started/index.html [COMPILATION] (1) For a complete build: make clean all (2) For a PGO build: make clean pgo (3) To strip executables: make strip_bin [COMPILER COMPATIBILITY] (*) GNU Compiler Collection (4.1+) (*) Intel C++ Compiler (9.x+) (*) Clang/LLVM (1.1+) (*) PGI C++ (10.x+) (*) Microsoft Visual Studio C++ Compiler (8.1+) (*) IBM XL C/C++ (10.x+) (*) C++ Builder (XE4+) [FILES] (00) Makefile (01) readme.txt (02) strtk.hpp (03) strtk_bloom_filter_example.cpp (04) strtk_combinations.cpp (05) strtk_combinator_example.cpp (06) strtk_converters_example.cpp (07) strtk_examples.cpp (08) strtk_glober.cpp (09) strtk_hexview.cpp (10) strtk_ipv4_parser.cpp (11) strtk_keyvalue_example.cpp (12) strtk_nth_combination_example.cpp (13) strtk_numstats.cpp (14) strtk_parse_test.cpp (15) strtk_period_parser.cpp (16) strtk_random_line.cpp (17) strtk_randomizer.cpp (18) strtk_search_trie_example.cpp (19) strtk_serializer_example.cpp (20) strtk_text_parser_example01.cpp (21) strtk_text_parser_example02.cpp (22) strtk_tokengrid_example.cpp (23) strtk_tokenizer_cmp.cpp (24) strtk_tokenizer_test.cpp (25) strtk_wordfreq.cpp
C++ String Toolkit Library
You might also like...
An open source standard C library that includes useful functions && (Reimplementation of libc functions + own functions).
📖 LIBFT-42 : Artistic view of LIBC: 🎭 HOW DOES IT FEEL HAVING YOUR OWN LIB: SUBJECT : ENGLISH PDF ℹ️ What is LIBFT : This project aims to code a C l
Single-header header-only C++11 / C++14 / C++17 library for easily managing set of auto-generated type-safe flags.
Single-header header-only C++11 / C++14 / C++17 library for easily managing set of auto-generated type-safe flags. Quick start #include bitflags/bitf
expected lite - Expected objects in C++11 and later in a single-file header-only library
expected lite: expected objects for C++11 and later expected lite is a single-file header-only library for objects that either represent a valid value
Guidelines Support Library
GSL: Guidelines Support Library The Guidelines Support Library (GSL) contains functions and types that are suggested for use by the C++ Core Guideline
gsl-lite – A single-file header-only version of ISO C++ Guidelines Support Library (GSL) for C++98, C++11, and later
gsl-lite: Guidelines Support Library for C++98, C++11 up metadata build packages try online gsl-lite is an implementation of the C++ Core Guidelines S
Your standard library for metaprogramming
Boost.Hana Your standard library for metaprogramming Overview #include boost/hana.hpp #include cassert #include string namespace hana = boost::h
C++11 metaprogramming library
Mp11, a C++11 metaprogramming library Mp11 is a C++11 metaprogramming library based on template aliases and variadic templates. It implements the appr
optional lite - A C++17-like optional, a nullable object for C++98, C++11 and later in a single-file header-only library
optional lite: A single-file header-only version of a C++17-like optional, a nullable object for C++98, C++11 and later Contents Example usage In a nu
Range library for C++14/17/20, basis for C++20's std::ranges
range-v3 Range library for C++14/17/20. This code was the basis of a formal proposal to add range support to the C++ standard library. That proposal e
Compile-time String to Byte Array
STB Compile-time String to Byte Array. Why? You may ask, why'd you want to do this? Well, this is a common issue in the cheat development scene, where
Libft is an individual project at 42 that requires us to re-create some standard C library functions including some additional ones that can be used later to build a library of useful functions for the rest of the program.
?? Index What is Libft? List of Functions Technologies ✨ What is Libft? Libft is an individual project at 42 that requires us to re-create some standa
Library that simplify to find header for class from STL library.
Library that simplify to find header for class from STL library. Instead of searching header for some class you can just include header with the class name.
Thrust is a C++ parallel programming library which resembles the C++ Standard Library.
Thrust: Code at the speed of light Thrust is a C++ parallel programming library which resembles the C++ Standard Library. Thrust's high-level interfac
jkds is a modern header-only C++20 library that complements the standard library.
jkds is a modern header-only C++20 library that complements the standard library. It provides generic atypical data structures, ergonomic functional programming abstractions, and then some.
Bionic BSD-3-ClauseBionic - Google's standard library, developed for Android. BSD-3-Clause
bionic bionic is Android's C library, math library, and dynamic linker. Using bionic as an app developer See the user documentation. Working on bionic
CloudABI's standard C library
NOTE: This project is unmaintained CloudABI is no longer being maintained. It was an awesome experiment, but it never got enough traction to be sustai
libcu++: The C++ Standard Library for Your Entire System
libcu++, the NVIDIA C++ Standard Library, is the C++ Standard Library for your entire system. It provides a heterogeneous implementation of the C++ Standard Library that can be used in and between CPU and GPU code.
D++ Extremely Lightweight C++ Discord Library
D++ An incredibly lightweight C++ Discord library This project is in alpha stages of development. Completed so far: Websocket connection with heartbea
EASTL stands for Electronic Arts Standard C++ Template Library
EASTL stands for Electronic Arts Standard Template Library. It is an extensive and robust implementation that has an emphasis on high performance.