add utils::trim() function to remove leading and trailing whitespace from string

This commit is contained in:
Axel Kohlmeyer
2020-07-30 23:39:37 -04:00
parent 4a28a708b9
commit 4b91ab0d23
3 changed files with 38 additions and 0 deletions

View File

@ -348,6 +348,19 @@ tagint utils::tnumeric(const char *file, int line, const char *str,
return ATOTAGINT(str);
}
/* ----------------------------------------------------------------------
Return string without leading or trailing whitespace
------------------------------------------------------------------------- */
std::string utils::trim(const std::string & line) {
int beg = re_match(line.c_str(),"\\S+");
int end = re_match(line.c_str(),"\\s+$");
if (beg < 0) beg = 0;
if (end < 0) end = line.size();
return line.substr(beg,end-beg);
}
/* ----------------------------------------------------------------------
Return string without trailing # comment
------------------------------------------------------------------------- */