diff options
Diffstat (limited to 'src/utils/split.cpp')
-rw-r--r-- | src/utils/split.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/utils/split.cpp b/src/utils/split.cpp new file mode 100644 index 0000000..82852ee --- /dev/null +++ b/src/utils/split.cpp @@ -0,0 +1,18 @@ +#include <utils/split.hpp> + +namespace utils +{ + std::vector<std::string> split(const std::string &s, const char delim, const bool allow_empty) + { + std::vector<std::string> ret; + std::stringstream ss(s); + std::string item; + while (std::getline(ss, item, delim)) + { + if (item.empty() && !allow_empty) + continue ; + ret.emplace_back(std::move(item)); + } + return ret; + } +} |