#pragma once #include #include class StringHelper { public: static std::vector split(const std::string &input, char delimiter) { std::vector tokens; std::string token; for (char ch : input) { if (ch == delimiter) { if (!token.empty()) { tokens.push_back(token); token.clear(); } } else { token += ch; } } if (!token.empty()) { tokens.push_back(token); } return tokens; } static std::vector split(const std::string &input, std::string delimiter) { std::vector tokens; size_t start = 0; size_t end = input.find(delimiter); while (end != std::string::npos) { tokens.push_back(input.substr(start, end - start)); start = end + delimiter.length(); end = input.find(delimiter, start); } tokens.push_back(input.substr(start)); return tokens; } };