27#ifndef G2O_STRING_TOOLS_H
28#define G2O_STRING_TOOLS_H
76template <
typename OutputIterator>
78 char* cl = (
char*)str;
81 long int id = strtol(cl, &cle, 10);
93template <
typename OutputIterator>
95 char* cl = (
char*)str;
98 double val = strtod(cl, &cle);
124 bool failIfLeftoverChars = true) {
125 std::istringstream i(s);
127 if (!(i >> x) || (failIfLeftoverChars && i.get(c)))
return false;
146 const std::string& substr);
152 const std::string& substr);
165 const std::string& delim);
#define G2O_ATTRIBUTE_FORMAT12
#define G2O_ATTRIBUTE_FORMAT23
void skipLine(std::istream &is)
std::string strToLower(const std::string &s)
int strPrintf(std::string &str, const char *fmt,...)
std::string strExpandFilename(const std::string &filename)
bool convertString(const std::string &s, T &x, bool failIfLeftoverChars=true)
std::string trimRight(const std::string &s)
std::string trim(const std::string &s)
std::string trimLeft(const std::string &s)
int readLine(std::istream &is, std::stringstream ¤tLine)
OutputIterator readFloats(const char *str, OutputIterator out)
bool strEndsWith(const std::string &s, const std::string &end)
std::vector< std::string > strSplit(const std::string &str, const std::string &delimiters)
T stringToType(const std::string &s, bool failIfLeftoverChars=true)
bool strStartsWith(const std::string &s, const std::string &start)
std::string formatString(const char *fmt,...)
OutputIterator readInts(const char *str, OutputIterator out)
std::string strToUpper(const std::string &s)