diff options
Diffstat (limited to 'server/src/org/jsoup/helper/StringUtil.java')
-rw-r--r-- | server/src/org/jsoup/helper/StringUtil.java | 167 |
1 files changed, 0 insertions, 167 deletions
diff --git a/server/src/org/jsoup/helper/StringUtil.java b/server/src/org/jsoup/helper/StringUtil.java deleted file mode 100644 index 5a3d19b0aa..0000000000 --- a/server/src/org/jsoup/helper/StringUtil.java +++ /dev/null @@ -1,167 +0,0 @@ -package org.jsoup.helper; - -import java.util.Collection; -import java.util.Iterator; - -/** - * A minimal String utility class. Designed for internal jsoup use only. - */ -public final class StringUtil { - // memoised padding up to 10 - private static final String[] padding = { "", " ", " ", " ", " ", - " ", " ", " ", " ", " ", " " }; - - /** - * Join a collection of strings by a seperator - * - * @param strings - * collection of string objects - * @param sep - * string to place between strings - * @return joined string - */ - public static String join(Collection strings, String sep) { - return join(strings.iterator(), sep); - } - - /** - * Join a collection of strings by a seperator - * - * @param strings - * iterator of string objects - * @param sep - * string to place between strings - * @return joined string - */ - public static String join(Iterator strings, String sep) { - if (!strings.hasNext()) { - return ""; - } - - String start = strings.next().toString(); - if (!strings.hasNext()) { - return start; - } - - StringBuilder sb = new StringBuilder(64).append(start); - while (strings.hasNext()) { - sb.append(sep); - sb.append(strings.next()); - } - return sb.toString(); - } - - /** - * Returns space padding - * - * @param width - * amount of padding desired - * @return string of spaces * width - */ - public static String padding(int width) { - if (width < 0) { - throw new IllegalArgumentException("width must be > 0"); - } - - if (width < padding.length) { - return padding[width]; - } - - char[] out = new char[width]; - for (int i = 0; i < width; i++) { - out[i] = ' '; - } - return String.valueOf(out); - } - - /** - * Tests if a string is blank: null, emtpy, or only whitespace (" ", \r\n, - * \t, etc) - * - * @param string - * string to test - * @return if string is blank - */ - public static boolean isBlank(String string) { - if (string == null || string.length() == 0) { - return true; - } - - int l = string.length(); - for (int i = 0; i < l; i++) { - if (!StringUtil.isWhitespace(string.codePointAt(i))) { - return false; - } - } - return true; - } - - /** - * Tests if a string is numeric, i.e. contains only digit characters - * - * @param string - * string to test - * @return true if only digit chars, false if empty or null or contains - * non-digit chrs - */ - public static boolean isNumeric(String string) { - if (string == null || string.length() == 0) { - return false; - } - - int l = string.length(); - for (int i = 0; i < l; i++) { - if (!Character.isDigit(string.codePointAt(i))) { - return false; - } - } - return true; - } - - /** - * Tests if a code point is "whitespace" as defined in the HTML spec. - * - * @param c - * code point to test - * @return true if code point is whitespace, false otherwise - */ - public static boolean isWhitespace(int c) { - return c == ' ' || c == '\t' || c == '\n' || c == '\f' || c == '\r'; - } - - public static String normaliseWhitespace(String string) { - StringBuilder sb = new StringBuilder(string.length()); - - boolean lastWasWhite = false; - boolean modified = false; - - int l = string.length(); - for (int i = 0; i < l; i++) { - int c = string.codePointAt(i); - if (isWhitespace(c)) { - if (lastWasWhite) { - modified = true; - continue; - } - if (c != ' ') { - modified = true; - } - sb.append(' '); - lastWasWhite = true; - } else { - sb.appendCodePoint(c); - lastWasWhite = false; - } - } - return modified ? sb.toString() : string; - } - - public static boolean in(String needle, String... haystack) { - for (String hay : haystack) { - if (hay.equals(needle)) { - return true; - } - } - return false; - } -} |