/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* cmd_utils.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: apommier +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/10 15:46:10 by apommier #+# #+# */ /* Updated: 2023/03/13 16:38:37 by apommier ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../includes/ft_irc.hpp" void split(std::string const &str, const char delim, std::vector &out) { size_t start; size_t end = 0; while ((start = str.find_first_not_of(delim, end)) != std::string::npos) { end = str.find(delim, start); out.push_back(str.substr(start, end - start)); } } void split_but_keep(std::string const &str, const char delim, std::vector &out) { size_t start; size_t end = 0; if (str.find_first_of(delim, end) == std::string::npos) { out.push_back(str); return ; } while ((start = str.find_first_not_of(delim, end)) != std::string::npos) { end = str.find(delim, start); out.push_back(str.substr(start, end + 1 - start)); } }