diff options
author | practicalswift <practicalswift@users.noreply.github.com> | 2019-12-11 09:55:00 +0000 |
---|---|---|
committer | practicalswift <practicalswift@users.noreply.github.com> | 2019-12-16 22:50:49 +0000 |
commit | 32e27129ff26c7cc10321652d5d2678876081983 (patch) | |
tree | 400fe56c9c3fff072a059f76d47ea16eab926d51 /src/util/string.h | |
parent | 22d9bae36f2a164acf35765231f1d93364c1c4a9 (diff) |
util: Move TrimString(...). Introduce default pattern (trims whitespace). Add NODISCARD.
Diffstat (limited to 'src/util/string.h')
-rw-r--r-- | src/util/string.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/util/string.h b/src/util/string.h index c6fa08e5b3..3db8fc8b98 100644 --- a/src/util/string.h +++ b/src/util/string.h @@ -11,6 +11,16 @@ #include <string> #include <vector> +NODISCARD inline std::string TrimString(const std::string& str, const std::string& pattern = " \f\n\r\t\v") +{ + std::string::size_type front = str.find_first_not_of(pattern); + if (front == std::string::npos) { + return std::string(); + } + std::string::size_type end = str.find_last_not_of(pattern); + return str.substr(front, end - front + 1); +} + /** * Join a list of items * |