From 7badeb28bee6abbf153e429c17fff0d0be53711d Mon Sep 17 00:00:00 2001 From: Tomas Slusny Date: Mon, 21 Jan 2019 10:41:06 +0000 Subject: [PATCH] Add Text#fromCSV and Text#toCSV Signed-off-by: Tomas Slusny --- .../java/net/runelite/client/util/Text.java | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/runelite-client/src/main/java/net/runelite/client/util/Text.java b/runelite-client/src/main/java/net/runelite/client/util/Text.java index 9f73e947a6..14a39f7009 100644 --- a/runelite-client/src/main/java/net/runelite/client/util/Text.java +++ b/runelite-client/src/main/java/net/runelite/client/util/Text.java @@ -26,6 +26,10 @@ package net.runelite.client.util; import com.google.common.base.CharMatcher; +import com.google.common.base.Joiner; +import com.google.common.base.Splitter; +import java.util.Collection; +import java.util.List; import java.util.regex.Pattern; /** @@ -34,6 +38,34 @@ import java.util.regex.Pattern; public class Text { private static final Pattern TAG_REGEXP = Pattern.compile("<[^>]*>"); + private static final Splitter COMMA_SPLITTER = Splitter + .on(",") + .omitEmptyStrings() + .trimResults(); + + private static final Joiner COMMA_JOINER = Joiner.on(",").skipNulls(); + + /** + * Splits comma separated values to list of strings + * + * @param input input + * @return list of values + */ + public static List fromCSV(final String input) + { + return COMMA_SPLITTER.splitToList(input); + } + + /** + * Joins collection of strings as comma separated values + * + * @param input collection + * @return comma separated value string + */ + public static String toCSV(final Collection input) + { + return COMMA_JOINER.join(input); + } /** * Removes all tags from the given string.