From 8cc96ec36bb6ac189fac339150185a30482c8556 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Sun, 28 Dec 2014 11:16:51 +0000 Subject: Add a join function for joining strings using a specific char --- src/string.hh | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/string.hh') diff --git a/src/string.hh b/src/string.hh index 91df1b98..8cbd7a68 100644 --- a/src/string.hh +++ b/src/string.hh @@ -235,6 +235,19 @@ std::vector split(StringView str, char separator); String escape(StringView str, StringView characters, char escape); String unescape(StringView str, StringView characters, char escape); +template +String join(const Container& container, char joiner) +{ + String res; + for (const auto& str : container) + { + if (not res.empty()) + res += joiner; + res += escape(str, joiner, '\\'); + } + return res; +} + inline String operator"" _str(const char* str, size_t) { return String(str); -- cgit v1.2.3