neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
string_utils.hpp File Reference
#include <neolib/neolib.hpp>
#include <string>
#include <vector>
#include <list>
#include <set>
#include <map>
#include <variant>
#include <locale>
#include <format>
#include <neolib/core/string.hpp>
#include <neolib/core/string_numeric.hpp>
#include <neolib/core/string_utf.hpp>

Go to the source code of this file.

Classes

struct  neolib::comma_as_whitespace
 
struct  neolib::comma_and_brackets_as_whitespace
 
struct  neolib::comma_only_whitespace
 
struct  neolib::string_span
 
struct  neolib::detail::wildcard_compare< Traits >
 
class  neolib::string_search_fsa
 
struct  neolib::format_result
 
struct  neolib::format_result::formatted_arg
 

Namespaces

namespace  neolib
 
namespace  neolib::detail
 

Typedefs

typedef std::vector< string_spanneolib::string_spans
 

Functions

template<typename T >
std::string neolib::to_std_string (T const &aValue)
 
template<typename T >
T neolib::from_std_string (std::string const &aValueAsString)
 
template<typename T >
string neolib::to_string (T const &aValue)
 
template<typename T >
T neolib::from_string (i_string const &aValueAsString)
 
template<typename FwdIter1 , typename FwdIter2 , typename ResultContainer >
FwdIter1 neolib::tokens (FwdIter1 aFirst, FwdIter1 aLast, FwdIter2 aDelimeterFirst, FwdIter2 aDelimiterLast, ResultContainer &aTokens, std::size_t aMaxTokens=0, bool aSkipEmptyTokens=true, bool aDelimeterIsSubsequence=false)
 
template<typename FwdIter , typename CharT , typename Traits , typename Alloc , typename ResultContainer >
void neolib::tokens (FwdIter aFirst, FwdIter aLast, const std::basic_string< CharT, Traits, Alloc > &aDelimeter, ResultContainer &aTokens, std::size_t aMaxTokens=0, bool aSkipEmptyTokens=true, bool aDelimeterIsSubsequence=false)
 
template<typename CharT , typename Traits , typename Alloc , typename ResultContainer >
void neolib::tokens (const std::basic_string< CharT, Traits, Alloc > &aLine, const std::basic_string< CharT, Traits, Alloc > &aDelimeter, ResultContainer &aTokens, std::size_t aMaxTokens=0, bool aSkipEmptyTokens=true, bool aDelimeterIsSubsequence=false)
 
template<typename FwdIter , typename CharT , typename Traits , typename Alloc >
std::vector< std::basic_string< CharT, Traits, Alloc > > neolib::tokens (FwdIter aFirst, FwdIter aLast, const std::basic_string< CharT, Traits, Alloc > &aDelimeter, std::size_t aMaxTokens=0, bool aSkipEmptyTokens=true, bool aDelimeterIsSubsequence=false)
 
template<typename CharT , typename Traits , typename Alloc >
std::vector< std::basic_string< CharT, Traits, Alloc > > neolib::tokens (const std::basic_string< CharT, Traits, Alloc > &aLine, const std::basic_string< CharT, Traits, Alloc > &aDelimeter, std::size_t aMaxTokens=0, bool aSkipEmptyTokens=true, bool aDelimeterIsSubsequence=false)
 
std::string neolib::to_string (const std::pair< char const *, char const * > &aIterPair)
 
template<typename CharT , typename Traits , typename Alloc >
std::basic_string< CharT, Traits, Allocneolib::to_lower (const std::basic_string< CharT, Traits, Alloc > &aString)
 
template<typename CharT >
CharT neolib::to_lower (CharT aCharacter)
 
template<typename CharT , typename Traits , typename Alloc >
std::basic_string< CharT, Traits, Allocneolib::to_upper (const std::basic_string< CharT, Traits, Alloc > &aString)
 
template<typename CharT >
CharT neolib::to_upper (CharT aCharacter)
 
template<typename CharT , typename Traits , typename Alloc >
bool neolib::replace_string (std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aSearch, const std::basic_string< CharT, Traits, Alloc > &aReplace, string_spans *aSpans, const string_span::type *aNewSpanType)
 
template<typename CharT , typename Traits , typename Alloc >
bool neolib::replace_string (std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aSearch, const std::basic_string< CharT, Traits, Alloc > &aReplace)
 
template<typename CharT , typename Traits , typename Alloc >
bool neolib::replace_string (std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aSearch, const std::basic_string< CharT, Traits, Alloc > &aReplace, string_spans *aSpans)
 
template<typename CharT , typename Traits , typename Alloc >
bool neolib::replace_string (std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aSearch, const std::basic_string< CharT, Traits, Alloc > &aReplace, string_spans *aSpans, string_span::type aNewSpanType)
 
template<typename CharT , typename Traits , typename Alloc >
std::string & neolib::remove_leading (std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aLeading)
 
template<typename CharT , typename Traits , typename Alloc >
std::string & neolib::remove_trailing (std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aTrailing)
 
template<typename CharT , typename Traits , typename Alloc >
std::string & neolib::remove_leading_and_trailing (std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aLeadingTrailing)
 
template<typename CharT >
bool neolib::contains_character (const CharT *aSequence, CharT aCharacter)
 
template<typename CharT , typename Traits , typename Alloc >
std::basic_string< CharT, Traits, Alloc >::size_type neolib::reverse_find_last_of (const std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aSequence, typename std::basic_string< CharT, Traits, Alloc >::size_type aPosition)
 
template<typename CharT , typename Traits , typename Alloc >
std::basic_string< CharT, Traits, Alloc >::size_type neolib::reverse_find_first_of (const std::basic_string< CharT, Traits, Alloc > &aString, const std::basic_string< CharT, Traits, Alloc > &aSequence, typename std::basic_string< CharT, Traits, Alloc >::size_type aPosition)
 
std::string neolib::parse_escapes (const std::string &aString)
 
std::string neolib::parse_url_escapes (const std::string &aString)
 
template<typename CharT >
CharT neolib::detail::wildcard_match_any_string ()
 
template<>
char16_t neolib::detail::wildcard_match_any_string< char16_t > ()
 
template<typename CharT >
CharT neolib::detail::wildcard_match_any_character ()
 
template<>
char16_t neolib::detail::wildcard_match_any_character< char16_t > ()
 
template<typename CharT , typename Traits , typename FwdIter >
bool neolib::do_wildcard_match (FwdIter aTextBegin, FwdIter aTextEnd, FwdIter aPatternBegin, FwdIter aPatternEnd)
 
template<typename CharT , typename FwdIter >
bool neolib::wildcard_match (FwdIter aTextBegin, FwdIter aTextEnd, FwdIter aPatternBegin, FwdIter aPatternEnd)
 
template<typename CharT , typename Traits , typename Alloc >
bool neolib::wildcard_match (const std::basic_string< CharT, Traits, Alloc > &aText, const std::basic_string< CharT, Traits, Alloc > &aPattern)
 
template<typename... Args>
format_result neolib::format (std::string_view const &aFormat, Args &&... aArgs)