Package org.htmlunit.util
Class StringUtils
java.lang.Object
org.htmlunit.util.StringUtils
String utilities class for utility functions not covered by third party libraries.
-
Method Summary
Modifier and TypeMethodDescriptionstatic org.htmlunit.html.impl.Color
asColorHexadecimal
(String token) Returns a Color parsed from the given RGB in hexadecimal notation.static String
cssCamelize
(String string) Transforms the specified string from delimiter-separated (e.g.static String
cssDeCamelize
(String string) Transforms the specified string from camel-cased (e.g.static boolean
equalsChar
(char expected, CharSequence s) static String
Escape the string to be used as xml 1.0 content be replacing the characters '"', '&', ''', '<', and '>' into their XML entity equivalents.static String
escapeXmlAttributeValue
(String attValue) Escape the string to be used as attribute value.static String
Escapes the characters '<', '>' and '&' into their XML entity equivalents.static org.htmlunit.html.impl.Color
findColorHSL
(String token) Returns a Color parsed from the given hsl notation if found inside the given string.static org.htmlunit.html.impl.Color
findColorRGB
(String token) Returns a Color parsed from the given rgb notation if found inside the given string.static org.htmlunit.html.impl.Color
findColorRGBA
(String token) Returns a Color parsed from the given rgb notation.static String
formatColor
(org.htmlunit.html.impl.Color color) Formats the specified color.static int
Returns the index within the specified string of the first occurrence of the specified search character.static boolean
Returns true if the param is not null and empty.static String
sanitizeForAppendReplacement
(String toSanitize) Sanitize a string for use in Matcher.appendReplacement.static String
sanitizeForFileName
(String toSanitize) Sanitizes a string for use as filename.static String[]
splitAtBlank
(String str) Splits the provided text into an array, using blank as the separator.static String[]
splitAtComma
(String str) Splits the provided text into an array, using blank as the separator.static String[]
Splits the provided text into an array, using comma or blank as the separator.static String[]
Splits the provided text into an array, using whitespace as the separator.static boolean
startsWithIgnoreCase
(String s, String expectedStart) static byte[]
toByteArray
(String content, Charset charset) Converts a string into a byte array using the specified encoding.static String
Lowercases a string by checking and check for null first.
-
Method Details
-
isEmptyString
Returns true if the param is not null and empty. This is different fromStringUtils.isEmpty(CharSequence)
because this returns false if the provided string is null.- Parameters:
s
- the string to check- Returns:
- true if the param is not null and empty
-
equalsChar
- Parameters:
expected
- the char that we expects
- the string to check- Returns:
- true if the provided string has only one char and this matches the expectation
-
startsWithIgnoreCase
- Parameters:
s
- the string to checkexpectedStart
- the string that we expect at the beginning- Returns:
- true if the provided string has only one char and this matches the expectation
-
escapeXmlChars
Escapes the characters '<', '>' and '&' into their XML entity equivalents.- Parameters:
s
- the string to escape- Returns:
- the escaped form of the specified string
-
escapeXml
Escape the string to be used as xml 1.0 content be replacing the characters '"', '&', ''', '<', and '>' into their XML entity equivalents.- Parameters:
text
- the attribute value- Returns:
- the escaped value
-
escapeXmlAttributeValue
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
Returns the index within the specified string of the first occurrence of the specified search character.- Parameters:
s
- the string to searchsearchChar
- the character to search forbeginIndex
- the index at which to start the searchendIndex
- the index at which to stop the search- Returns:
- the index of the first occurrence of the character in the string or
-1
-
asColorHexadecimal
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
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
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
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
-
formatColor
Formats the specified color.- Parameters:
color
- the color to format- Returns:
- the specified color, formatted
-
sanitizeForAppendReplacement
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
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
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
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
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
Converts a string into a byte array using the specified encoding.- Parameters:
content
- the string to convertcharset
- the charset- Returns:
- the String as a byte[]; if the specified encoding is not supported an empty byte[] will be returned
-
splitAtJavaWhitespace
Splits the provided text into an array, using whitespace as the separator. Whitespace is defined byCharacter.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
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
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
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
-