Class StringUtils

java.lang.Object
net.thevpc.common.strings.StringUtils

public class StringUtils extends Object
Author:
taha.bensalah@gmail.com
  • Field Details

  • Constructor Details

    • StringUtils

      public StringUtils()
  • Method Details

    • combineConverters

      public static StringConverter combineConverters(StringConverter... converters)
    • normalizeString

      public static String normalizeString(String expression)
    • nonNull

      public static String nonNull(Object object)
    • nonNull

      public static String nonNull(String value)
    • trimObject

      public static String trimObject(Object value)
    • trim

      public static String trim(String value)
    • isBlank

      public static boolean isBlank(String string)
    • escapeRegex

      public static String escapeRegex(String string)
    • indexOfWord

      public static int indexOfWord(String string, String word)
    • indexOfWord

      public static int indexOfWord(String string, String word, int from)
    • indexOfWord

      public static int indexOfWord(String string, String word, int from, String ponctuations)
    • wildcardToRegex

      public static String wildcardToRegex(String pattern)
    • wildcardToRegex

      public static String wildcardToRegex(String pattern, char pathSeparator)
      Parameters:
      pattern - simple shell like
      pathSeparator - pathSeparator to consider for '**' escape pattern
      Returns:
      regular expression
    • indexOfRegexpStart

      public static int indexOfRegexpStart(String value, String regexp)
    • isJavaIdentifier

      public static boolean isJavaIdentifier(String value)
    • locationOfRegexp

      public static StringLocation locationOfRegexp(String value, String regexp)
    • indexOfRegexpEnd

      public static int indexOfRegexpEnd(String value, String regexp)
    • replaceDollarPlaceHolders

      public static String replaceDollarPlaceHolders(String s, StringConverter converter)
    • replacePlaceHolders

      public static String replacePlaceHolders(String s, String prefix, String suffix, StringConverter converter)
    • substring

      public static String substring(String full, int from, int to)
    • verboseStacktraceToString

      public static String verboseStacktraceToString(Throwable throwable)
    • stacktraceToString

      public static String stacktraceToString(Throwable throwable)
    • matchesWildcardExpression

      public static boolean matchesWildcardExpression(String str, String pattern)
    • matchesWildcardExpression

      public static boolean matchesWildcardExpression(String str, String pattern, char pathSeparator)
    • listToString

      public static <T> String listToString(Collection<T> objects, String separator)
    • listToString

      public static <T> String listToString(Collection<T> objects, String separator, boolean noEmpty, StringTransform transform)
    • longestSubstring

      public static String longestSubstring(String str1, String str2, boolean caseInsensitive)
      https://karussell.wordpress.com/2011/04/14/longest-common-substring-algorithm-in-java/
      Parameters:
      str1 - first string
      str2 - second string
      Returns:
      a substring with the longest common substring
    • createStringList

      public static StringCollection createStringList(String separators, StringConverter keyConverter)
    • createStringSet

      public static StringCollection createStringSet(String separators, StringConverter keyConverter)
    • createStringMap

      public static StringCollection createStringMap(String separators, StringConverter keyConverter, StringConverter valueConverter)
    • createStringCollection

      public static StringCollection createStringCollection(String separators, boolean preserveOrder, boolean duplicates, StringConverter keyConverter, StringConverter valueConverter)
    • removeDuplicates

      public static String[] removeDuplicates(String[] values)
    • split

      public static String[] split(String value, String chars)
    • split

      public static String[] split(String value, String chars, boolean trim, boolean ignoreEmpty)
    • cut

      public static String cut(String value, int max)
    • cut

      public static String cut(String value, int max, String etc)
    • expand

      public static String expand(String value, String chars, int min)
    • listToStringDeep

      public static <T> String listToStringDeep(String separator, boolean noEmpty, StringTransform transform, Object... items)
    • trimToNull

      public static String trimToNull(String str)
    • trimObjectToNull

      public static String trimObjectToNull(Object any)
      return either a null string or a non empty string. If the object is not a string, it is first converted to a string using String.valueOf(object); if the resulting string is empty, null is returned
      Parameters:
      any - any
      Returns:
      null or trimmed object's toString
    • exceptionToString

      public static String exceptionToString(Throwable ex)
    • fillString

      public static String fillString(char x, int width)
    • fillString

      public static String fillString(String pattern, int width)
    • alignLeft

      public static String alignLeft(String s, int width)
    • alignRight

      public static String alignRight(String s, int width)
    • join

      public static String join(String sep, int[] items)
    • join

      public static String join(String sep, long[] items)
    • join

      public static String join(String sep, float[] items)
    • join

      public static String join(String sep, double[] items)
    • join

      public static String join(String sep, byte[] items)
    • join

      public static String join(String sep, boolean[] items)
    • join

      public static String join(String sep, char[] items)
    • join

      public static String join(String sep, String[] items)
    • join

      public static <T> String join(String sep, T[] items, ObjectToString<T> toStr)
    • join

      public static <T> String join(String sep, Collection<T> items, ObjectToString<T> toStr)
    • join

      public static String join(String sep, Collection<String> items)
    • format

      public static String format(String message, Map<String,Object> parameters, MessageNameFormatContext messageNameFormatContext)
      Parameters:
      message - in the form "This is a message with ${param}
      parameters - parameters
      messageNameFormatContext - messageNameFormatContext
      Returns:
      formatted string
    • literalToString

      public static String literalToString(Object literal)
    • toCapitalized

      public static String toCapitalized(String name)
    • toUncapitalized

      public static String toUncapitalized(String name)
    • matchSubstring

      public static Map<String,String> matchSubstring(String val, String pattern)
      * **
      Parameters:
      pattern - containing {1}
      Returns:
    • replaceTail

      public static String replaceTail(String s, String oldTail, String newTail)
    • replaceHead

      public static String replaceHead(String s, String oldHead, String newHead)
    • formatLeft

      public static String formatLeft(Object number, int size)
    • formatRight

      public static String formatRight(Object number, int size)
    • parseMap

      public static Map<String,String> parseMap(String text, String entrySeparators)
    • parseMap

      public static Map<String,String> parseMap(String text, String eqSeparators, String entrySeparators)
    • readToken

      public static int readToken(Reader reader, String stopTokens, StringBuilder result) throws IOException
      Throws:
      IOException
    • clear

      public static StringBuilder clear(StringBuilder c)
    • parseCommandline

      public static String[] parseCommandline(String line)
      code from org.apache.tools.ant.types.Commandline copyrights goes to Apache Ant Authors (Licensed to the Apache Software Foundation (ASF)) Crack a command line.
      Parameters:
      line - the command line to process.
      Returns:
      the command line broken into strings. An empty or null toProcess parameter results in a zero sized array.
    • coalesce

      public static String coalesce(String... cmd)
    • compileSubPatterns2

      public static Pattern2 compileSubPatterns2(String text, String... subPatterns)
    • compileSubPatterns

      public static Pattern compileSubPatterns(String text, String... subPatterns)
      Builds a pattern where all the string is escaped but £? will be replaced by valid patterns Example :
      StringUtils.compileSubPatterns("\"java.lang:type=Threading\".operations.dumpAllThreads[£1].threadName", "?<Item>[0-9]+")
      
      Parameters:
      text - text
      subPatterns - subPatterns
      Returns:
      Pattern