23#ifndef STRINGHELPERS_H 
   24#define STRINGHELPERS_H 
   42    std::vector<std::byte> 
decode(
const std::string& base64) 
noexcept;
 
   48    std::string 
encode(
const std::vector<std::byte>& bytes) 
noexcept;
 
   62    std::string 
join(
const std::vector<std::string>& values, 
const std::string& separator, 
bool separateLast = 
false) noexcept;
 
   68    std::
string lower(std::
string s) noexcept;
 
   92    std::
string quote(const std::
string& s) noexcept;
 
  100    std::
string replace(std::
string s, const std::
string& toReplace, const std::
string& 
replace) noexcept;
 
  114    std::vector<std::
string> 
splitArgs(std::
string s) noexcept;
 
  120    std::
string str(const std::wstring& s) noexcept;
 
  130    unsigned int stoui(const std::
string& s, 
size_t* idx = 
nullptr, 
int base = 10) noexcept;
 
  136    std::
string trim(const std::
string& s) noexcept;
 
  143    std::
string trim(const std::
string& s, 
char delimiter) noexcept;
 
  149    std::
string upper(std::
string s) noexcept;
 
  155    std::wstring 
wstr(const std::
string& s) noexcept;
 
  165    std::vector<T> 
split(const std::
string& s, const std::
string& delimiter, 
bool includeEmpty = true) noexcept
 
  167        std::vector<T> splits;
 
  170        while((next = s.find(delimiter, last)) != std::string::npos)
 
  172            std::string token{ s.substr(last, next - last) };
 
  173            if(includeEmpty || !
trim(token).empty())
 
  175                splits.push_back(token);
 
  177            last = next + delimiter.length();
 
  180        std::string finalToken{ s.substr(last) };
 
  181        if(includeEmpty || !
trim(finalToken).empty())
 
  183            splits.push_back(finalToken);
 
 
  195    template<StringImplicitlyConstructible T = std::
string>
 
  196    std::vector<T> 
split(
const std::string& s, 
char delimiter, 
bool includeEmpty = 
true) noexcept
 
  198        return split<T>(s, std::string(1, delimiter), includeEmpty);
 
 
 
Definition stringhelpers.h:35
 
Definition stringhelpers.h:33
 
unsigned int stoui(const std::string &s, size_t *idx=nullptr, int base=10) noexcept
Converts a string to an unsigned int.
 
std::vector< std::byte > decode(const std::string &base64) noexcept
Converts a base64 encoded string into a list of bytes.
 
std::string replace(std::string s, const std::string &toReplace, const std::string &replace) noexcept
Replaces a substring within a string with a new string.
 
std::string trim(const std::string &s) noexcept
Trims whitespace form the beginning and end of a string.
 
std::string normalizeForFilename(const std::string &s, bool windowsOnly=false) noexcept
Normalizes a string for use in a filename.
 
std::string newUuid() noexcept
Generates a new uuid value.
 
std::string str(const std::wstring &s) noexcept
Converts the wstring to a string.
 
std::string lower(std::string s) noexcept
Gets a fully lowercase string from the provided string.
 
bool isValidUrl(const std::string &s) noexcept
Gets whether or not the provided string is a valid url.
 
std::string newGuid() noexcept
Generates a new guid value.
 
std::string join(const std::vector< std::string > &values, const std::string &separator, bool separateLast=false) noexcept
Concatenates the elements of a string list using the specified separator between each element.
 
std::vector< std::string > splitArgs(std::string s) noexcept
Splits a string based on argument delimiters.
 
std::string encode(const std::vector< std::byte > &bytes) noexcept
Converts a list of bytes into a base64 encoded string.
 
std::string upper(std::string s) noexcept
Gets a fully uppercase string from the provided string.
 
std::string quote(const std::string &s) noexcept
Quotes a string for use in a command line.
 
std::wstring wstr(const std::string &s) noexcept
Converts the string to a wstring.
 
std::vector< T > split(const std::string &s, const std::string &delimiter, bool includeEmpty=true) noexcept
Splits a string based on a delimiter.
Definition stringhelpers.h:165