20 #ifndef COIL_STRINGUTIL_H 21 #define COIL_STRINGUTIL_H 28 #if defined(Cygwin) && ( __GNUC__ < 4 ) 31 typedef basic_string<wchar_t> wstring;
117 void toLower(std::string& str);
170 bool isEscaped(
const std::string& str, std::string::size_type pos);
204 std::string
escape(
const std::string str);
242 std::string
unescape(
const std::string str);
374 unsigned int replaceString(std::string& str,
const std::string from,
375 const std::string to);
400 vstring
split(
const std::string& input,
401 const std::string& delimiter,
402 bool ignore_empty =
false);
432 bool toBool(std::string str, std::string yes, std::string no,
433 bool default_value =
true);
457 bool includes(
const vstring& list, std::string value,
458 bool ignore_case =
true);
483 bool includes(
const std::string& list, std::string value,
484 bool ignore_case =
true);
542 bool isURL(
const std::string& str);
565 template <
class Pr
intable>
568 std::stringstream str_stream;
570 return str_stream.str();
596 template <
typename To>
599 if (str == 0) {
return false; }
602 if ((s << str).fail()) {
return false; }
603 if ((s >> val).fail()) {
return false; }
631 bool stringTo<std::string>(std::string& val,
const char* str);
681 std::string
flatten(vstring sv);
706 char**
toArgv(
const vstring& args);
730 std::string
sprintf(
char const * __restrict fmt, ...);
733 #endif // COIL_STRINGUTIL_H std::string normalize(std::string &str)
Erase the head/tail blank and replace upper case to lower case.
void toUpper(std::string &str)
Uppercase String Transformation.
std::string otos(Printable n)
Convert the given object to std::string.
bool stringTo(To &val, const char *str)
Convert the given std::string to object.
void eraseBlank(std::string &str)
Erase blank characters of string.
void eraseHeadBlank(std::string &str)
Erase the head blank characters of string.
vstring split(const std::string &input, const std::string &delimiter, bool ignore_empty)
Split string by delimiter.
vstring unique_sv(vstring sv)
Eliminate duplication from the given string list.
void eraseBothEndsBlank(std::string &str)
Erase the head blank and the tail blank characters of string.
bool isAbsolutePath(const std::string &str)
Investigate whether the given string is absolute path or not.
std::vector< std::string > vstring
void eraseTailBlank(std::string &str)
Erase the tail blank characters of string.
std::string flatten(vstring sv)
Create CSV file from the given string list.
char ** toArgv(const vstring &args)
Convert the given string list into the argument list.
bool isURL(const std::string &str)
Investigate whether the given string is URL or not.
unsigned int replaceString(std::string &str, const std::string from, const std::string to)
Replace string.
void toLower(std::string &str)
Lowercase String Transformation.
bool toBool(std::string str, std::string yes, std::string no, bool default_value)
Convert given string into bool value.
std::string wstring2string(std::wstring wstr)
wstring to string conversion
int getlinePortable(std::istream &istr, std::string &line)
Read a line from input stream.
std::string sprintf(char const *__restrict fmt,...)
Convert it into a format given with an argumen.
std::wstring string2wstring(std::string str)
string to wstring conversion
bool isEscaped(const std::string &str, std::string::size_type pos)
Check whether the character is escaped or not.
bool includes(const vstring &list, std::string value, bool ignore_case)
Include if a string is included in string list.
std::string unescape(const std::string str)
Unescape string.
std::string escape(const std::string str)
Escape string.
Common Object Interface Layer.