omw  0.1.1
Classes | Typedefs | Functions | Variables
String Library

#include <omw/string.h> More...

Classes

class  omw::StringReplacePair
 
class  omw::string
 

Typedefs

using omw::stdStringVector_t = std::vector< std::string >
 
using omw::stdStringVector_size_type = omw::stdStringVector_t::size_type
 
using omw::stringVector_t = std::vector< omw::string >
 
using omw::stringVector_size_type = omw::stringVector_t::size_type
 

Functions

omw::string omw::to_string (int32_t value)
 
omw::string omw::to_string (uint32_t value)
 
omw::string omw::to_string (int64_t value)
 
omw::string omw::to_string (uint64_t value)
 
omw::string omw::to_string (float value)
 
omw::string omw::to_string (double value)
 
omw::string omw::to_string (long double value)
 
omw::string omw::to_string (bool value, bool asText=true)
 
omw::string omw::to_string (const std::pair< int32_t, int32_t > &value, char sepChar=pairtos_defaultSepChar)
 
omw::string omw::to_string (const std::pair< uint32_t, uint32_t > &value, char sepChar=pairtos_defaultSepChar)
 
omw::string omw::to_string (const std::pair< int64_t, int64_t > &value, char sepChar=pairtos_defaultSepChar)
 
omw::string omw::to_string (const std::pair< uint64_t, uint64_t > &value, char sepChar=pairtos_defaultSepChar)
 
omw::string omw::to_string (const std::pair< float, float > &value, char sepChar=pairtos_defaultSepChar)
 
omw::string omw::to_string (const std::pair< double, double > &value, char sepChar=pairtos_defaultSepChar)
 
omw::string omw::to_string (const std::pair< long double, long double > &value, char sepChar=pairtos_defaultSepChar)
 
bool omw::stob (const std::string &boolStr)
 
std::pair< int32_t, int32_t > omw::stoipair (const std::string &str, char sepChar=pairtos_defaultSepChar)
 
omw::string omw::join (const omw::stringVector_t &strings)
 
omw::string omw::join (const omw::stringVector_t &strings, char sepChar)
 
size_t omw::peekNewLine (const char *p)
 
size_t omw::peekNewLine (const char *p, const char *end)
 

Variables

constexpr char omw::pairtos_defaultSepChar = ';'
 
const char *const omw::hexStrDigitsUpper = "0123456789ABCDEF"
 
const char *const omw::hexStrDigitsLower = "0123456789abcdef"
 
const char *const omw::hexStrDigits = hexStrDigitsUpper
 
constexpr char omw::toHexStr_defaultSepChar = 0x20
 
constexpr stdStringVector_size_type omw::stdStringVector_npos = (omw::stdStringVector_size_type)-1
 
constexpr stringVector_size_type omw::stringVector_npos = (omw::stringVector_size_type)-1
 

UTF-8 Byte Strings

const char *const omw::UTF8CP_00C4 = "\xC3\x84"
 
const char *const omw::UTF8CP_00D6 = "\xC3\x96"
 
const char *const omw::UTF8CP_00DC = "\xC3\x9C"
 
const char *const omw::UTF8CP_00E4 = "\xC3\xA4"
 
const char *const omw::UTF8CP_00F6 = "\xC3\xB6"
 
const char *const omw::UTF8CP_00FC = "\xC3\xBC"
 
const char *const omw::UTF8CP_2580 = "\xE2\x96\x80"
 
const char *const omw::UTF8CP_2584 = "\xE2\x96\x84"
 
const char *const omw::UTF8CP_2588 = "\xE2\x96\x88"
 

UFT-8 Byte String Aliases

const char *const omw::UTF8CP_Auml = omw::UTF8CP_00C4
 
const char *const omw::UTF8CP_Ouml = omw::UTF8CP_00D6
 
const char *const omw::UTF8CP_Uuml = omw::UTF8CP_00DC
 
const char *const omw::UTF8CP_auml = omw::UTF8CP_00E4
 
const char *const omw::UTF8CP_ouml = omw::UTF8CP_00F6
 
const char *const omw::UTF8CP_uuml = omw::UTF8CP_00FC
 

Hex Strings

omw::string omw::toHexStr (int8_t value)
 
omw::string omw::toHexStr (uint8_t value)
 
omw::string omw::toHexStr (int16_t value)
 
omw::string omw::toHexStr (uint16_t value)
 
omw::string omw::toHexStr (int32_t value)
 
omw::string omw::toHexStr (uint32_t value)
 
omw::string omw::toHexStr (int64_t value)
 
omw::string omw::toHexStr (uint64_t value)
 
omw::string omw::toHexStr (int16_t value, char sepChar)
 
omw::string omw::toHexStr (uint16_t value, char sepChar)
 
omw::string omw::toHexStr (int32_t value, char sepChar)
 
omw::string omw::toHexStr (uint32_t value, char sepChar)
 
omw::string omw::toHexStr (int64_t value, char sepChar)
 
omw::string omw::toHexStr (uint64_t value, char sepChar)
 
omw::string omw::toHexStr (const std::vector< char > &data, char sepChar=toHexStr_defaultSepChar)
 
omw::string omw::toHexStr (const std::vector< uint8_t > &data, char sepChar=toHexStr_defaultSepChar)
 
omw::string omw::toHexStr (const char *data, size_t count, char sepChar=toHexStr_defaultSepChar)
 
omw::string omw::toHexStr (const uint8_t *data, size_t count, char sepChar=toHexStr_defaultSepChar)
 
int32_t omw::hexstoi (const std::string &str)
 
int64_t omw::hexstoi64 (const std::string &str)
 
uint32_t omw::hexstoui (const std::string &str)
 
uint64_t omw::hexstoui64 (const std::string &str)
 
std::vector< uint8_t > omw::hexstovector (const std::string &str, char sepChar=toHexStr_defaultSepChar)
 
omw::string omw::sepHexStr (const std::string &str)
 
omw::string omw::sepHexStr (const std::string &str, char sepChar)
 
omw::string omw::sepHexStr (const std::string &str, char rmChar, char sepChar)
 
omw::string omw::sepHexStr (const std::string &str, const char *rmChars, size_t count, char sepChar=toHexStr_defaultSepChar)
 
omw::string omw::sepHexStr (const std::string &str, const std::vector< char > &rmChars, char sepChar=toHexStr_defaultSepChar)
 
omw::string omw::rmNonHex (const std::string &str)
 
void omw::rmNonHex (char *str)
 
void omw::rmNonHex (std::string &str)
 

String Vectors

omw::stringVector_t omw::stringVector (const char *const *strings, size_t count)
 
omw::stringVector_t omw::stringVector (const std::string *strings, size_t count)
 
omw::stringVector_t omw::stringVector (const omw::string *strings, size_t count)
 
omw::stringVector_t omw::stringVector (const omw::stdStringVector_t &strvec)
 
omw::stdStringVector_t omw::stdStringVector (const char *const *strings, size_t count)
 
omw::stdStringVector_t omw::stdStringVector (const std::string *strings, size_t count)
 
omw::stdStringVector_t omw::stdStringVector (const omw::string *strings, size_t count)
 
omw::stdStringVector_t omw::stdStringVector (const omw::stringVector_t &strvec)
 

Character Classification

constexpr bool omw::isBlank (char ch)
 
constexpr bool omw::isCntrl (char ch)
 
constexpr bool omw::isDigit (char ch)
 
constexpr bool omw::isGraph (char ch)
 
constexpr bool omw::isHex (char ch)
 
constexpr bool omw::isLower (char ch)
 
constexpr bool omw::isNull (char ch)
 
constexpr bool omw::isPrint (char ch)
 
constexpr bool omw::isPunct (char ch)
 
constexpr bool omw::isSpace (char ch)
 
constexpr bool omw::isUpper (char ch)
 
constexpr bool omw::isWhitespace (char ch)
 
constexpr bool omw::isAlpha (char ch)
 
constexpr bool omw::isAlnum (char ch)
 

String Classification

bool omw::isInteger (const std::string &str)
 
bool omw::isUInteger (const std::string &str)
 
bool omw::isHex (const std::string &str)
 

Detailed Description

#include <omw/string.h>

Function Documentation

◆ hexstoi()

int32_t omw::hexstoi ( const std::string str)
Parameters
strHexadecimal string representation
Returns
The corresponding value

Exceptions

◆ hexstoi64()

int64_t omw::hexstoi64 ( const std::string str)
Parameters
strHexadecimal string representation
Returns
The corresponding value

Exceptions

◆ hexstoui()

uint32_t omw::hexstoui ( const std::string str)
Parameters
strHexadecimal string representation
Returns
The corresponding value

Exceptions

◆ hexstoui64()

uint64_t omw::hexstoui64 ( const std::string str)
Parameters
strHexadecimal string representation
Returns
The corresponding value

Exceptions

◆ peekNewLine() [1/2]

size_t omw::peekNewLine ( const char *  p)
Parameters
pPointer to the position in the string
Returns
Number of new line characters at p, range: [0, 2]

It's recommended to use omw::peekNewLine(const char*, const char*) to prevent access violations.

◆ peekNewLine() [2/2]

size_t omw::peekNewLine ( const char *  p,
const char *  end 
)
Parameters
pPointer to the position in the string
endPointer to the first position beyond the string
Returns
Number of new line characters at p, range: [0, 2]

If end is NULL, omw::peekNewLine(const char*) will be used and access violations may occure.

◆ sepHexStr()

omw::string omw::sepHexStr ( const std::string str)
Parameters
str
Returns
Same as omw::sepHexStr(str, toHexStr_defaultSepChar).

◆ stob()

bool omw::stob ( const std::string boolStr)
Parameters
boolStrBoolean string representation
Returns
Bool value of the string

true and 1 converts to true, false and 0 to false. The input is not case sensitive.

Exceptions

◆ stoipair()

std::pair< int32_t, int32_t > omw::stoipair ( const std::string str,
char  sepChar = pairtos_defaultSepChar 
)
Parameters
strPair string representation
sepCharCharacter between the two values
Returns
std::pair with the two values

Exceptions