Class StringUtils

java.lang.Object
org.htmlunit.util.StringUtils

public final class StringUtils extends Object
String utilities class for utility functions not covered by third party libraries.
  • Field Details

    • HEX_COLOR

      private static final Pattern HEX_COLOR
    • RGB_COLOR

      private static final Pattern RGB_COLOR
    • RGBA_COLOR

      private static final Pattern RGBA_COLOR
    • HSL_COLOR

      private static final Pattern HSL_COLOR
    • ILLEGAL_FILE_NAME_CHARS

      private static final Pattern ILLEGAL_FILE_NAME_CHARS
    • CamelizeCache_

      private static final Map<String,String> CamelizeCache_
  • Constructor Details

    • StringUtils

      private StringUtils()
      Disallow instantiation of this class.
  • Method Details

    • escapeXmlChars

      public static String escapeXmlChars(String s)
      Escapes the characters '<', '>' and '&' into their XML entity equivalents. Note that sometimes we have to use this method instead of StringEscapeUtils.escapeXml(String) or StringEscapeUtils.escapeHtml4(String) because those methods escape some unicode characters as well.
      Parameters:
      s - the string to escape
      Returns:
      the escaped form of the specified string
    • escapeXmlAttributeValue

      public static String escapeXmlAttributeValue(String attValue)
      Escape the string to be used as attribute value. Only <, & and " have to be escaped (see http://www.w3.org/TR/REC-xml/#d0e888).
      Parameters:
      attValue - the attribute value
      Returns:
      the escaped value
    • indexOf

      public static int indexOf(String s, char searchChar, int beginIndex, int endIndex)
      Returns the index within the specified string of the first occurrence of the specified search character.
      Parameters:
      s - the string to search
      searchChar - the character to search for
      beginIndex - the index at which to start the search
      endIndex - the index at which to stop the search
      Returns:
      the index of the first occurrence of the character in the string or -1
    • asColorHexadecimal

      public static Color asColorHexadecimal(String token)
      Returns a Color parsed from the given RGB in hexadecimal notation.
      Parameters:
      token - the token to parse
      Returns:
      a Color whether the token is a color RGB in hexadecimal notation; otherwise null
    • findColorRGB

      public static Color findColorRGB(String token)
      Returns a Color parsed from the given rgb notation if found inside the given string.
      Parameters:
      token - the token to parse
      Returns:
      a Color whether the token contains a color in RGB notation; otherwise null
    • findColorRGBA

      public static Color findColorRGBA(String token)
      Returns a Color parsed from the given rgb notation.
      Parameters:
      token - the token to parse
      Returns:
      a Color whether the token is a color in RGB notation; otherwise null
    • findColorHSL

      public static Color findColorHSL(String token)
      Returns a Color parsed from the given hsl notation if found inside the given string.
      Parameters:
      token - the token to parse
      Returns:
      a Color whether the token contains a color in RGB notation; otherwise null
    • hslToRgb

      private static Color hslToRgb(float h, float s, float l)
      Converts an HSL color value to RGB. Conversion formula adapted from http://en.wikipedia.org/wiki/HSL_color_space. Assumes h, s, and l are contained in the set [0, 1]
      Parameters:
      h - the hue
      s - the saturation
      l - the lightness
      Returns:
      Color
    • hueToRgb

      private static float hueToRgb(float p, float q, float t)
    • to255

      private static int to255(float value)
    • formatColor

      public static String formatColor(Color color)
      Formats the specified color.
      Parameters:
      color - the color to format
      Returns:
      the specified color, formatted
    • sanitizeForAppendReplacement

      public static String sanitizeForAppendReplacement(String toSanitize)
      Sanitize a string for use in Matcher.appendReplacement. Replaces all \ with \\ and $ as \$ because they are used as control characters in appendReplacement.
      Parameters:
      toSanitize - the string to sanitize
      Returns:
      sanitized version of the given string
    • sanitizeForFileName

      public static String sanitizeForFileName(String toSanitize)
      Sanitizes a string for use as filename. Replaces \, /, |, :, ?, *, ", <, >, control chars by _ (underscore).
      Parameters:
      toSanitize - the string to sanitize
      Returns:
      sanitized version of the given string
    • cssCamelize

      public static String cssCamelize(String string)
      Transforms the specified string from delimiter-separated (e.g. font-size) to camel-cased (e.g. fontSize).
      Parameters:
      string - the string to camelize
      Returns:
      the transformed string
    • toRootLowerCase

      public static String toRootLowerCase(String s)
      Lowercases a string by checking and check for null first. There is no cache involved and the ROOT locale is used to convert it.
      Parameters:
      s - the string to lowercase
      Returns:
      the lowercased string
    • cssDeCamelize

      public static String cssDeCamelize(String string)
      Transforms the specified string from camel-cased (e.g. fontSize) to delimiter-separated (e.g. font-size). to camel-cased .
      Parameters:
      string - the string to decamelize
      Returns:
      the transformed string
    • toByteArray

      public static byte[] toByteArray(String content, Charset charset)
      Converts a string into a byte array using the specified encoding.
      Parameters:
      content - the string to convert
      charset - the charset
      Returns:
      the String as a byte[]; if the specified encoding is not supported an empty byte[] will be returned
    • splitAtJavaWhitespace

      public static String[] splitAtJavaWhitespace(String str)
      Splits the provided text into an array, using whitespace as the separator. Whitespace is defined by Character.isWhitespace(char).
      Parameters:
      str - the String to parse, may be null
      Returns:
      an array of parsed Strings, an empty array if null String input
    • splitAtBlank

      public static String[] splitAtBlank(String str)
      Splits the provided text into an array, using blank as the separator.
      Parameters:
      str - the String to parse, may be null
      Returns:
      an array of parsed Strings, an empty array if null String input
    • splitAtComma

      public static String[] splitAtComma(String str)
      Splits the provided text into an array, using blank as the separator.
      Parameters:
      str - the String to parse, may be null
      Returns:
      an array of parsed Strings, an empty array if null String input
    • splitAtCommaOrBlank

      public static String[] splitAtCommaOrBlank(String str)
      Splits the provided text into an array, using comma or blank as the separator.
      Parameters:
      str - the String to parse, may be null
      Returns:
      an array of parsed Strings, an empty array if null String input