A simpler way to allow trim() to work with temporary strings.

This commit is contained in:
wrenczes@gmail.com
2011-02-05 06:42:53 +00:00
parent a0a3c59b29
commit d5777a6565
2 changed files with 6 additions and 30 deletions

View File

@@ -74,19 +74,17 @@ namespace wagic
using std::string;
#define SPACES " \t\r\n"
//string manipulation methods
// for trimming strings on the fly
string trim (const string & s, const string & t = SPACES);
string trim_right (const string & s, const string & t = SPACES);
string trim_left (const string & s, const string & t = SPACES);
// trimmning strings inplace
string& trim(string& str);
string& ltrim(string& str);
string& rtrim(string& str);
inline string trim(const string& str)
{
string value(str);
return trim(value);
}
std::string join(vector<string>& v, string delim = " ");
std::vector<std::string>& split(const std::string& s, char delim, std::vector<std::string>& elems);

View File

@@ -237,28 +237,6 @@ u32 ramAvailable(void)
}
/* String manipulation functions */
string trim_right (const string & s, const string & t)
{
string d (s);
string::size_type i (d.find_last_not_of (t));
if (i == string::npos)
return "";
else
return d.erase (d.find_last_not_of (t) + 1) ;
}
string trim_left (const string & s, const string & t)
{
string d (s);
return d.erase (0, s.find_first_not_of (t)) ;
}
string trim (const string & s, const string & t)
{
string d (s);
return trim_left (trim_right (d, t), t) ;
}
string& trim(string& str)
{
str = ltrim(str);