|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.util.StringUtils
public abstract class StringUtils
Miscellaneous string utility methods. Mainly for internal use within the framework; consider Jakarta's Commons Lang for a more comprehensive suite of string utilities.
This class delivers some simple functionality that should really be provided by the core Java String and StringBuffer classes, such as the ability to replace all occurrences of a given substring in a target string. It also provides easy-to-use methods to convert between delimited strings, such as CSV strings, and collections and arrays.
org.apache.commons.lang.StringUtils
Constructor Summary | |
---|---|
StringUtils()
|
Method Summary | |
---|---|
static String[] |
addStringToArray(String[] array,
String str)
Append the given String to the given String array, returning a new array consisting of the input array contents plus the given String. |
static String |
applyRelativePath(String path,
String relativePath)
Apply the given relative path to the given path, assuming standard Java folder separation (i.e. "/" separators); |
static String |
arrayToCommaDelimitedString(Object[] arr)
Convenience method to return a String array as a CSV String. |
static String |
arrayToDelimitedString(Object[] arr,
String delim)
Convenience method to return a String array as a delimited (e.g. |
static String |
capitalize(String str)
Capitalize a String , changing the first letter to
upper case as per Character.toUpperCase(char) . |
static String |
cleanPath(String path)
Normalize the path by suppressing sequences like "path/.." and inner simple dots. |
static String |
collectionToCommaDelimitedString(Collection coll)
Convenience method to return a Collection as a CSV String. |
static String |
collectionToDelimitedString(Collection coll,
String delim)
Convenience method to return a Collection as a delimited (e.g. |
static String |
collectionToDelimitedString(Collection coll,
String delim,
String prefix,
String suffix)
Convenience method to return a Collection as a delimited (e.g. |
static Set |
commaDelimitedListToSet(String str)
Convenience method to convert a CSV string list to a set. |
static String[] |
commaDelimitedListToStringArray(String str)
Convert a CSV list into an array of Strings. |
static int |
countOccurrencesOf(String str,
String sub)
Count the occurrences of the substring in string s. |
static String |
delete(String inString,
String pattern)
Delete all occurrences of the given substring. |
static String |
deleteAny(String inString,
String charsToDelete)
Delete any character in a given string. |
static String[] |
delimitedListToStringArray(String str,
String delimiter)
Take a String which is a delimited list and convert it to a String array. |
static boolean |
endsWithIgnoreCase(String str,
String suffix)
Test if the given String ends with the specified suffix, ignoring upper/lower case. |
static String |
getFilename(String path)
Extract the filename from the given path, e.g. |
static String |
getFilenameExtension(String path)
Extract the filename extension from the given path, e.g. |
static boolean |
hasLength(String str)
Check if a String has length. |
static boolean |
hasText(String str)
Check if a String has text. |
static Locale |
parseLocaleString(String localeString)
Parse the given locale string into a java.util.Locale . |
static boolean |
pathEquals(String path1,
String path2)
Compare two paths after normalization of them. |
static String |
quote(String str)
Quote the given String with single quotes. |
static Object |
quoteIfString(Object obj)
Turn the given Object into a String with single quotes if it is a String; keeping the Object as-is else. |
static String[] |
removeDuplicateStrings(String[] array)
Remove duplicate Strings from the given array. |
static String |
replace(String inString,
String oldPattern,
String newPattern)
Replace all occurences of a substring within a string with another string. |
static String[] |
sortStringArray(String[] array)
Turn given source String array into sorted array. |
static String[] |
split(String toSplit,
String delimiter)
Split a String at the first occurrence of the delimiter. |
static Properties |
splitArrayElementsIntoProperties(String[] array,
String delimiter)
Take an array Strings and split each element based on the given delimiter. |
static Properties |
splitArrayElementsIntoProperties(String[] array,
String delimiter,
String charsToDelete)
Take an array Strings and split each element based on the given delimiter. |
static boolean |
startsWithIgnoreCase(String str,
String prefix)
Test if the given String starts with the specified prefix, ignoring upper/lower case. |
static String |
stripFilenameExtension(String path)
Strip the filename extension from the given path, e.g. |
static String[] |
tokenizeToStringArray(String str,
String delimiters)
Tokenize the given String into a String array via a StringTokenizer. |
static String[] |
tokenizeToStringArray(String str,
String delimiters,
boolean trimTokens,
boolean ignoreEmptyTokens)
Tokenize the given String into a String array via a StringTokenizer. |
static String[] |
toStringArray(Collection collection)
Copy the given Collection into a String array. |
static String |
trimLeadingWhitespace(String str)
Trim leading whitespace from the given String. |
static String |
trimTrailingWhitespace(String str)
Trim trailing whitespace from the given String. |
static String |
trimWhitespace(String str)
Trim leading and trailing whitespace from the given String. |
static String |
uncapitalize(String str)
Uncapitalize a String , changing the first letter to
lower case as per Character.toLowerCase(char) . |
static String |
unqualify(String qualifiedName)
Unqualify a string qualified by a '.' dot character. |
static String |
unqualify(String qualifiedName,
char separator)
Unqualify a string qualified by a separator character. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public StringUtils()
Method Detail |
---|
public static boolean hasLength(String str)
StringUtils.hasLength(null) = false StringUtils.hasLength("") = false StringUtils.hasLength(" ") = true StringUtils.hasLength("Hello") = true
str
- the String to check, may be null
true
if the String is not null and has lengthpublic static boolean hasText(String str)
true
if the string not null, it's length is > 0
, and
it has at least one non-whitespace character.
StringUtils.hasText(null) = false
StringUtils.hasText("") = false
StringUtils.hasText(" ") = false
StringUtils.hasText("12345") = true
StringUtils.hasText(" 12345 ") = true
- Parameters:
str
- the String to check, may be null
- Returns:
true
if the String is not null, length > 0,
and not whitespace only- See Also:
Character.isWhitespace(char)
public static String trimWhitespace(String str)
str
- the String to check
Character.isWhitespace(char)
public static String trimLeadingWhitespace(String str)
str
- the String to check
Character.isWhitespace(char)
public static String trimTrailingWhitespace(String str)
str
- the String to check
Character.isWhitespace(char)
public static boolean startsWithIgnoreCase(String str, String prefix)
str
- the String to checkprefix
- the prefix to look forString.startsWith(java.lang.String, int)
public static boolean endsWithIgnoreCase(String str, String suffix)
str
- the String to checksuffix
- the suffix to look forString.endsWith(java.lang.String)
public static int countOccurrencesOf(String str, String sub)
str
- string to search in. Return 0 if this is null.sub
- string to search for. Return 0 if this is null.public static String replace(String inString, String oldPattern, String newPattern)
inString
- String to examineoldPattern
- String to replacenewPattern
- String to insert
public static String delete(String inString, String pattern)
pattern
- the pattern to delete all occurrences ofpublic static String deleteAny(String inString, String charsToDelete)
charsToDelete
- a set of characters to delete.
E.g. "az\n" will delete 'a's, 'z's and new lines.public static String quote(String str)
str
- the input String (e.g. "myString")
null if the input was null
public static Object quoteIfString(Object obj)
obj
- the input Object (e.g. "myString")
public static String unqualify(String qualifiedName)
qualifiedName
- the qualified namepublic static String unqualify(String qualifiedName, char separator)
qualifiedName
- the qualified nameseparator
- the separatorpublic static String capitalize(String str)
String
, changing the first letter to
upper case as per Character.toUpperCase(char)
.
No other letters are changed.
str
- the String to capitalize, may be null
null
if nullpublic static String uncapitalize(String str)
String
, changing the first letter to
lower case as per Character.toLowerCase(char)
.
No other letters are changed.
str
- the String to uncapitalize, may be null
null
if nullpublic static String getFilename(String path)
path
- the file path (may be null
)
null
if nonepublic static String getFilenameExtension(String path)
path
- the file path (may be null
)
null
if nonepublic static String stripFilenameExtension(String path)
path
- the file path (may be null
)
null
if nonepublic static String applyRelativePath(String path, String relativePath)
path
- the path to start from (usually a full file path)relativePath
- the relative path to apply
(relative to the full file path above)
public static String cleanPath(String path)
The result is convenient for path comparison. For other uses, notice that Windows separators ("\") are replaced by simple slashes.
path
- the original path
public static boolean pathEquals(String path1, String path2)
path1
- First path for comparizonpath2
- Second path for comparizon
public static Locale parseLocaleString(String localeString)
java.util.Locale
.
This is the inverse operation of Locale's toString
.
localeString
- the locale string, following
java.util.Locale
's toString format ("en", "en_UK", etc).
Also accepts spaces as separators, as alternative to underscores.
public static String[] addStringToArray(String[] array, String str)
array
- the array to append to (can be null
)str
- the String to append
null
)public static String[] sortStringArray(String[] array)
array
- the source array
null
)public static String[] toStringArray(Collection collection)
collection
- the Collection to copy
null
if the Collection
was null
as well)public static String[] removeDuplicateStrings(String[] array)
array
- the String array
public static String[] split(String toSplit, String delimiter)
toSplit
- the string to splitdelimiter
- to split the string up with
null
if the delimiter wasn't found in the given input Stringpublic static Properties splitArrayElementsIntoProperties(String[] array, String delimiter)
Properties
instance is then generated, with the left of the
delimiter providing the key, and the right of the delimiter providing the value.
Will trim both the key and value before adding them to the
Properties
instance.
array
- the array to processdelimiter
- to split each element using (typically the equals symbol)
Properties
instance representing the array contents,
or null
if the array to process was null or emptypublic static Properties splitArrayElementsIntoProperties(String[] array, String delimiter, String charsToDelete)
Properties
instance is then generated, with the left of the
delimiter providing the key, and the right of the delimiter providing the value.
Will trim both the key and value before adding them to the
Properties
instance.
array
- the array to processdelimiter
- to split each element using (typically the equals symbol)charsToDelete
- one or more characters to remove from each element
prior to attempting the split operation (typically the quotation mark
symbol), or null
if no removal should occur
Properties
instance representing the array contents,
or null
if the array to process was null or emptypublic static String[] tokenizeToStringArray(String str, String delimiters)
The given delimiters string is supposed to consist of any number of
delimiter characters. Each of those characters can be used to separate
tokens. A delimiter is always a single character; for multi-character
delimiters, consider using delimitedListToStringArray
str
- the String to tokenizedelimiters
- the delimiter characters, assembled as String
(each of those characters is individually considered as delimiter).
StringTokenizer
,
String.trim()
,
delimitedListToStringArray(java.lang.String, java.lang.String)
public static String[] tokenizeToStringArray(String str, String delimiters, boolean trimTokens, boolean ignoreEmptyTokens)
The given delimiters string is supposed to consist of any number of
delimiter characters. Each of those characters can be used to separate
tokens. A delimiter is always a single character; for multi-character
delimiters, consider using delimitedListToStringArray
str
- the String to tokenizedelimiters
- the delimiter characters, assembled as String
(each of those characters is individually considered as delimiter)trimTokens
- trim the tokens via String's trim
ignoreEmptyTokens
- omit empty tokens from the result array
(only applies to tokens that are empty after trimming; StringTokenizer
will not consider subsequent delimiters as token in the first place).
StringTokenizer
,
String.trim()
,
delimitedListToStringArray(java.lang.String, java.lang.String)
public static String[] delimitedListToStringArray(String str, String delimiter)
A single delimiter can consists of more than one character: It will still
be considered as single delimiter string, rather than as bunch of potential
delimiter characters - in contrast to tokenizeToStringArray
.
str
- the input Stringdelimiter
- the delimiter between elements (this is a single delimiter,
rather than a bunch individual delimiter characters)
tokenizeToStringArray(java.lang.String, java.lang.String)
public static String[] commaDelimitedListToStringArray(String str)
str
- CSV list
public static Set commaDelimitedListToSet(String str)
str
- CSV String
public static String arrayToDelimitedString(Object[] arr, String delim)
arr
- array to display. Elements may be of any type (toString
will be called on each element).delim
- delimiter to use (probably a ",")public static String collectionToDelimitedString(Collection coll, String delim, String prefix, String suffix)
coll
- Collection to displaydelim
- delimiter to use (probably a ",")prefix
- string to start each element withsuffix
- string to end each element withpublic static String collectionToDelimitedString(Collection coll, String delim)
coll
- Collection to displaydelim
- delimiter to use (probably a ",")public static String arrayToCommaDelimitedString(Object[] arr)
arr
- array to display. Elements may be of any type (toString
will be called on each element).public static String collectionToCommaDelimitedString(Collection coll)
coll
- Collection to display
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |