public final class StringUtils extends Object
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
StringUtils.Renderer<T> |
| 限定符和类型 | 字段和说明 |
|---|---|
static String |
BATCH_ID_PLACEHOLDER |
(专用程序包) byte[] |
BYTES_NEW_LINE |
(专用程序包) String[] |
EMPTY_ARRAY |
static String[] |
EMPTY_STRINGS |
static int |
INDEX_NOT_FOUND
Represents a failed index search.
|
static String |
WHITESPACE |
| 限定符和类型 | 方法和说明 |
|---|---|
static String[] |
add(String[] x,
String sep,
String[] y) |
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 Java resource path,
assuming standard Java folder separation (i.e. "/" separators).
|
static String |
arrayToCommaDelimitedString(Object[] arr)
Convert a
String array into a comma delimited String
(i.e., CSV). |
static String |
arrayToDelimitedString(Object[] arr,
String delim)
Convert a
String array into a delimited String (e.g. |
static boolean |
booleanValue(String tfString) |
static String |
camelhumpToUnderline(String str)
将驼峰风格替换为下划线风格
|
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 |
collapse(String name)
Collapses a name.
|
static String |
collapseQualifier(String qualifier,
boolean includeDots)
Given a qualifier, collapse it.
|
static String |
collapseQualifierBase(String name,
String qualifierBase)
Cross between
collapse(java.lang.String) and partiallyUnqualify(java.lang.String, java.lang.String). |
static String |
collectionToCommaDelimitedString(Collection<?> coll)
Convert a
Collection into a delimited String (e.g., CSV). |
static String |
collectionToDelimitedString(Collection<?> coll,
String delim)
Convert a
Collection into a delimited String (e.g. |
static String |
collectionToDelimitedString(Collection<?> coll,
String delim,
String prefix,
String suffix)
Convert a
Collection to a delimited String (e.g. |
static Set<String> |
commaDelimitedListToSet(String str)
Convert a comma delimited list (e.g., a row from a CSV file) into a set.
|
static String[] |
commaDelimitedListToStringArray(String str)
Convert a comma delimited list (e.g., a row from a CSV file) into an
array of strings.
|
static String[] |
concatenateStringArrays(String[] array1,
String[] array2)
Concatenate the given
String arrays into one,
with overlapping array elements included twice. |
static boolean |
containsWhitespace(CharSequence str)
Check whether the given
CharSequence contains any whitespace characters. |
static boolean |
containsWhitespace(String str)
Check whether the given
String contains any whitespace characters. |
static String |
convertByStyle(String str,
Style style)
根据指定的样式进行转换
|
static int |
countOccurrencesOf(String str,
String sub)
Count the occurrences of the substring
sub in string str. |
static int |
countUnquoted(String string,
char character) |
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 that is a delimited list and convert it into a
String array. |
static String[] |
delimitedListToStringArray(String str,
String delimiter,
String charsToDelete)
Take a
String that is a delimited list and convert it into
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 int |
firstIndexOfChar(String sqlString,
BitSet keys,
int startindex) |
static int |
firstIndexOfChar(String sqlString,
String string,
int startindex) |
static String |
generateAlias(String description) |
static String |
generateAlias(String description,
int unique)
Generate a nice alias for the given class name or collection role name and unique integer.
|
static String |
getFilename(String path)
Extract the filename from the given Java resource path,
e.g.
|
static String |
getFilenameExtension(String path)
Extract the filename extension from the given Java resource path,
e.g.
|
static char |
getFirstNonWhitespaceCharacter(String str) |
static char |
getLastNonWhitespaceCharacter(String str) |
static boolean |
hasLength(CharSequence str)
Check that the given
CharSequence is neither null nor
of length 0. |
static boolean |
hasLength(String str)
Check that the given
String is neither null nor of length 0. |
static boolean |
hasText(CharSequence str)
Check whether the given
CharSequence contains actual text. |
static boolean |
hasText(String str)
Check whether the given
String contains actual text. |
static int |
indexOf(CharSequence seq,
CharSequence searchSeq)
Finds the first index within a CharSequence, handling
null. |
static int |
indexOf(CharSequence seq,
CharSequence searchSeq,
int startPos)
Finds the first index within a CharSequence, handling
null. |
static boolean |
isEmpty(CharSequence string) |
static boolean |
isEmpty(Object str)
Check whether the given
String is empty. |
static boolean |
isEmptyOrWhiteSpace(String string) |
static boolean |
isLowercaseAlpha(char c) |
static boolean |
isNotEmpty(CharSequence string) |
static boolean |
isQuoted(String name)
Determine if the given string is quoted (wrapped by '`' characters at beginning and end).
|
static boolean |
isUppercaseAlpha(char c) |
static <T> String |
join(Collection<T> values,
StringUtils.Renderer<T> renderer) |
static String |
join(String separator,
Iterable objects) |
static String |
join(String seperator,
Iterator objects) |
static String |
join(String seperator,
String[] strings) |
static <T> String |
join(T[] values,
StringUtils.Renderer<T> renderer) |
static String |
joinWithQualifierAndSuffix(String[] values,
String qualifier,
String suffix,
String deliminator) |
static int |
lastIndexOf(CharSequence seq,
CharSequence searchSeq)
Finds the last index within a CharSequence, handling
null. |
static int |
lastIndexOf(CharSequence seq,
int searchChar)
Returns the index within
seq of the last occurrence of
the specified character. |
static int |
lastIndexOf(CharSequence seq,
int searchChar,
int startPos)
Returns the index within
seq of the last occurrence of
the specified character, searching backward starting at the
specified index. |
static int |
lastIndexOfLetter(String string) |
static int[] |
locateUnquoted(String string,
char character) |
static String[] |
mergeStringArrays(String[] array1,
String[] array2)
已过时。
as of 4.3.15, in favor of manual merging via
LinkedHashSet
(with every entry included at most once, even entries within the first array) |
static String |
moveAndToBeginning(String filter) |
static String[] |
multiply(String string,
Iterator placeholders,
Iterator replacements) |
static String |
nullIfEmpty(String value) |
static List<String> |
parseCommaSeparatedString(String incomingString) |
static Locale |
parseLocale(String localeValue)
Parse the given
String value into a Locale, accepting
the Locale.toString() format as well as BCP 47 language tags. |
static Locale |
parseLocaleString(String localeString)
Parse the given
String representation into a Locale. |
static TimeZone |
parseTimeZoneString(String timeZoneString)
Parse the given
timeZoneString value into a TimeZone. |
static String |
partiallyUnqualify(String name,
String qualifierBase)
Partially unqualifies a qualified name.
|
static boolean |
pathEquals(String path1,
String path2)
Compare two paths after normalization of them.
|
static String |
qualifier(String qualifiedName) |
static String |
qualify(String prefix,
String name) |
static String[] |
qualify(String prefix,
String[] names) |
static String |
qualifyConditionally(String prefix,
String name) |
static String[] |
qualifyIfNot(String prefix,
String[] names) |
static String |
quote(String name)
Return a representation of the given name ensuring quoting (wrapped with '`' characters).
|
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 |
repeat(char character,
int times) |
static String |
repeat(String string,
int times) |
static String |
repeat(String string,
int times,
String deliminator) |
static String[] |
replace(String[] templates,
String placeholder,
String replacement) |
static String |
replace(String template,
String placeholder,
String replacement) |
static String |
replace(String template,
String placeholder,
String replacement,
boolean wholeWords) |
static String |
replace(String template,
String placeholder,
String replacement,
boolean wholeWords,
boolean encloseInParensIfNecessary) |
static String |
replace(String beforePlaceholder,
String afterPlaceholder,
String placeholder,
String replacement,
boolean wholeWords,
boolean encloseInParensIfNecessary) |
static String |
replaceOnce(String template,
String placeholder,
String replacement) |
static String |
root(String qualifiedName) |
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 String[] |
split(String separators,
String list,
boolean include) |
static Properties |
splitArrayElementsIntoProperties(String[] array,
String delimiter)
Take an array of strings and split each element based on the given delimiter.
|
static Properties |
splitArrayElementsIntoProperties(String[] array,
String delimiter,
String charsToDelete)
Take an array of strings and split each element based on the given delimiter.
|
static String[] |
splitTrimmingTokens(String separators,
String list,
boolean include) |
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 Java resource path,
e.g.
|
static String |
substring(String str,
int start)
Gets a substring from the specified String avoiding exceptions.
|
static String |
substring(String str,
int start,
int end)
Gets a substring from the specified String avoiding exceptions.
|
static boolean |
substringMatch(CharSequence str,
int index,
CharSequence substring)
Test whether the given string matches the given substring
at the given index.
|
static String[] |
suffix(String[] columns,
String suffix) |
static String[] |
toArrayElement(String s)
Takes a String s and returns a new String[1] with s as the only element.
|
static String[] |
tokenizeToStringArray(String str,
String delimiters)
|
static String[] |
tokenizeToStringArray(String str,
String delimiters,
boolean trimTokens,
boolean ignoreEmptyTokens)
|
static String |
toLanguageTag(Locale locale)
已过时。
as of 5.0.4, in favor of
Locale.toLanguageTag() |
static char |
toLowerAscii(char c) |
static String |
toString(Object[] array) |
static String[] |
toStringArray(Collection<String> collection)
Copy the given
Collection into a String array. |
static String[] |
toStringArray(Enumeration<String> enumeration)
Copy the given Enumeration into a
String array. |
static char |
toUpperAscii(char c) |
static String |
trimAllWhitespace(String str)
Trim all whitespace from the given
String:
leading, trailing, and in between characters. |
static String[] |
trimArrayElements(String[] array)
Trim the elements of the given
String array,
calling String.trim() on each of them. |
static String |
trimLeadingCharacter(String str,
char leadingCharacter)
Trim all occurrences of the supplied leading character from the given
String. |
static String |
trimLeadingWhitespace(String str)
Trim leading whitespace from the given
String. |
static String |
trimTrailingCharacter(String str,
char trailingCharacter)
Trim all occurrences of the supplied trailing character 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 |
truncate(String string,
int length) |
static String |
uncapitalize(String str)
Uncapitalize a
String, changing the first letter to
lower case as per Character.toLowerCase(char). |
static String |
underlineToCamelhump(String str)
将下划线风格替换为驼峰风格
|
static String |
unqualify(String qualifiedName) |
static String |
unqualify(String qualifiedName,
char separator)
Unqualify a string qualified by a separator character.
|
static String |
unqualifyEntityName(String entityName) |
static String |
unquote(String name)
Return the unquoted version of name (stripping the start and end '`' characters if present).
|
static String |
unroot(String qualifiedName) |
static String |
uriDecode(String source,
Charset charset)
Decode the given encoded URI component value.
|
public static final int INDEX_NOT_FOUND
String[] EMPTY_ARRAY
byte[] BYTES_NEW_LINE
public static final String[] EMPTY_STRINGS
public static int lastIndexOfLetter(String string)
public static String joinWithQualifierAndSuffix(String[] values, String qualifier, String suffix, String deliminator)
public static String repeat(char character, int times)
public static String replace(String template, String placeholder, String replacement, boolean wholeWords)
public static String replace(String template, String placeholder, String replacement, boolean wholeWords, boolean encloseInParensIfNecessary)
public static String replace(String beforePlaceholder, String afterPlaceholder, String placeholder, String replacement, boolean wholeWords, boolean encloseInParensIfNecessary)
public static char getLastNonWhitespaceCharacter(String str)
public static char getFirstNonWhitespaceCharacter(String str)
public static String replaceOnce(String template, String placeholder, String replacement)
public static String[] splitTrimmingTokens(String separators, String list, boolean include)
public static String collapse(String name)
name - The name to collapse.public static String collapseQualifier(String qualifier, boolean includeDots)
qualifier - The qualifier to collapse.includeDots - Should we include the dots in the collapsed form?public static String partiallyUnqualify(String name, String qualifierBase)
name - The (potentially) qualified name.qualifierBase - The qualifier base.public static String collapseQualifierBase(String name, String qualifierBase)
collapse(java.lang.String) and partiallyUnqualify(java.lang.String, java.lang.String). Functions much like collapse(java.lang.String)
except that only the qualifierBase is collapsed. For example, with a base of 'org.hibernate' the name
'org.hibernate.internal.util.StringHelper' would become 'o.h.util.StringHelper'.name - The (potentially) qualified name.qualifierBase - The qualifier base.public static boolean booleanValue(String tfString)
public static String[] multiply(String string, Iterator placeholders, Iterator replacements)
public static int countUnquoted(String string, char character)
public static int[] locateUnquoted(String string, char character)
public static boolean isNotEmpty(CharSequence string)
public static boolean isEmpty(CharSequence string)
public static boolean isEmptyOrWhiteSpace(String string)
public static int firstIndexOfChar(String sqlString, String string, int startindex)
public static String generateAlias(String description, int unique)
description - The base name (usually an entity-name or collection-role)unique - A uniquing valuepublic static boolean isQuoted(String name)
name - The name to check.public static String quote(String name)
name - The name to quote.public static String unquote(String name)
name - The name to be unquoted.public static String[] toArrayElement(String s)
s - public static List<String> parseCommaSeparatedString(String incomingString)
public static <T> String join(Collection<T> values, StringUtils.Renderer<T> renderer)
public static <T> String join(T[] values, StringUtils.Renderer<T> renderer)
public static String convertByStyle(String str, Style style)
str - style - public static boolean isUppercaseAlpha(char c)
public static boolean isLowercaseAlpha(char c)
public static char toUpperAscii(char c)
public static char toLowerAscii(char c)
public static int indexOf(CharSequence seq, CharSequence searchSeq, int startPos)
Finds the first index within a CharSequence, handling null.
This method uses String.indexOf(String, int) if possible.
A null CharSequence will return -1.
A negative start position is treated as zero.
An empty ("") search CharSequence always matches.
A start position greater than the string length only matches
an empty search CharSequence.
StringUtils.indexOf(null, *, *) = -1
StringUtils.indexOf(*, null, *) = -1
StringUtils.indexOf("", "", 0) = 0
StringUtils.indexOf("", *, 0) = -1 (except when * = "")
StringUtils.indexOf("aabaabaa", "a", 0) = 0
StringUtils.indexOf("aabaabaa", "b", 0) = 2
StringUtils.indexOf("aabaabaa", "ab", 0) = 1
StringUtils.indexOf("aabaabaa", "b", 3) = 5
StringUtils.indexOf("aabaabaa", "b", 9) = -1
StringUtils.indexOf("aabaabaa", "b", -1) = 2
StringUtils.indexOf("aabaabaa", "", 2) = 2
StringUtils.indexOf("abc", "", 9) = 3
seq - the CharSequence to check, may be nullsearchSeq - the CharSequence to find, may be nullstartPos - the start position, negative treated as zeronull string inputpublic static int indexOf(CharSequence seq, CharSequence searchSeq)
Finds the first index within a CharSequence, handling null.
This method uses String.indexOf(String, int) if possible.
A null CharSequence will return -1.
StringUtils.indexOf(null, *) = -1
StringUtils.indexOf(*, null) = -1
StringUtils.indexOf("", "") = 0
StringUtils.indexOf("", *) = -1 (except when * = "")
StringUtils.indexOf("aabaabaa", "a") = 0
StringUtils.indexOf("aabaabaa", "b") = 2
StringUtils.indexOf("aabaabaa", "ab") = 1
StringUtils.indexOf("aabaabaa", "") = 0
seq - the CharSequence to check, may be nullsearchSeq - the CharSequence to find, may be nullnull string inputpublic static int lastIndexOf(CharSequence seq, int searchChar)
seq of the last occurrence of
the specified character. For values of searchChar in the
range from 0 to 0xFFFF (inclusive), the index (in Unicode code
units) returned is the largest value k such that:
is true. For other values ofthis.charAt(k) == searchChar
searchChar, it is the
largest value k such that:
is true. In either case, if no such character occurs in this string, thenthis.codePointAt(k) == searchChar
-1 is returned. Furthermore, a null or empty ("")
CharSequence will return -1. The
seq CharSequence object is searched backwards
starting at the last character.
StringUtils.lastIndexOf(null, *) = -1
StringUtils.lastIndexOf("", *) = -1
StringUtils.lastIndexOf("aabaabaa", 'a') = 7
StringUtils.lastIndexOf("aabaabaa", 'b') = 5
seq - the CharSequence to check, may be nullsearchChar - the character to findnull string inputCharSequenceUtils call to behave more like Stringpublic static int lastIndexOf(CharSequence seq, int searchChar, int startPos)
seq of the last occurrence of
the specified character, searching backward starting at the
specified index. For values of searchChar in the range
from 0 to 0xFFFF (inclusive), the index returned is the largest
value k such that:
is true. For other values of(this.charAt(k) == searchChar) && (k <= startPos)
searchChar, it is the
largest value k such that:
is true. In either case, if no such character occurs in(this.codePointAt(k) == searchChar) && (k <= startPos)
seq
at or before position startPos, then
-1 is returned. Furthermore, a null or empty ("")
CharSequence will return -1. A start position greater
than the string length searches the whole string.
The search starts at the startPos and works backwards;
matches starting after the start position are ignored.
All indices are specified in char values
(Unicode code units).
StringUtils.lastIndexOf(null, *, *) = -1
StringUtils.lastIndexOf("", *, *) = -1
StringUtils.lastIndexOf("aabaabaa", 'b', 8) = 5
StringUtils.lastIndexOf("aabaabaa", 'b', 4) = 2
StringUtils.lastIndexOf("aabaabaa", 'b', 0) = -1
StringUtils.lastIndexOf("aabaabaa", 'b', 9) = 5
StringUtils.lastIndexOf("aabaabaa", 'b', -1) = -1
StringUtils.lastIndexOf("aabaabaa", 'a', 0) = 0
seq - the CharSequence to check, may be nullsearchChar - the character to findstartPos - the start positionnull string inputpublic static int lastIndexOf(CharSequence seq, CharSequence searchSeq)
Finds the last index within a CharSequence, handling null.
This method uses String.lastIndexOf(String) if possible.
A null CharSequence will return -1.
StringUtils.lastIndexOf(null, *) = -1
StringUtils.lastIndexOf(*, null) = -1
StringUtils.lastIndexOf("", "") = 0
StringUtils.lastIndexOf("aabaabaa", "a") = 7
StringUtils.lastIndexOf("aabaabaa", "b") = 5
StringUtils.lastIndexOf("aabaabaa", "ab") = 4
StringUtils.lastIndexOf("aabaabaa", "") = 8
seq - the CharSequence to check, may be nullsearchSeq - the CharSequence to find, may be nullnull string inputpublic static String substring(String str, int start)
Gets a substring from the specified String avoiding exceptions.
A negative start position can be used to start n
characters from the end of the String.
A null String will return null.
An empty ("") String will return "".
StringUtils.substring(null, *) = null
StringUtils.substring("", *) = ""
StringUtils.substring("abc", 0) = "abc"
StringUtils.substring("abc", 2) = "c"
StringUtils.substring("abc", 4) = ""
StringUtils.substring("abc", -2) = "bc"
StringUtils.substring("abc", -4) = "abc"
str - the String to get the substring from, may be nullstart - the position to start from, negative means
count back from the end of the String by this many charactersnull if null String inputpublic static String substring(String str, int start, int end)
Gets a substring from the specified String avoiding exceptions.
A negative start position can be used to start/end n
characters from the end of the String.
The returned substring starts with the character in the start
position and ends before the end position. All position counting is
zero-based -- i.e., to start at the beginning of the string use
start = 0. Negative start and end positions can be used to
specify offsets relative to the end of the String.
If start is not strictly to the left of end, ""
is returned.
StringUtils.substring(null, *, *) = null
StringUtils.substring("", * , *) = "";
StringUtils.substring("abc", 0, 2) = "ab"
StringUtils.substring("abc", 2, 0) = ""
StringUtils.substring("abc", 2, 4) = "c"
StringUtils.substring("abc", 4, 6) = ""
StringUtils.substring("abc", 2, 2) = ""
StringUtils.substring("abc", -2, -1) = "b"
StringUtils.substring("abc", -4, 2) = "ab"
str - the String to get the substring from, may be nullstart - the position to start from, negative means
count back from the end of the String by this many charactersend - the position to end at (exclusive), negative means
count back from the end of the String by this many charactersnull if null String inputpublic static boolean isEmpty(Object str)
String is empty.
This method accepts any Object as an argument, comparing it to
null and the empty String. As a consequence, this method
will never return true for a non-null non-String object.
The Object signature is useful for general attribute handling code that commonly deals with Strings but generally has to iterate over Objects since attributes may e.g. be primitive value objects as well.
str - the candidate Stringpublic static boolean hasLength(CharSequence str)
CharSequence is neither null nor
of length 0.
Note: this method returns true for a CharSequence
that purely consists of whitespace.
StringUtils.hasLength(null) = false
StringUtils.hasLength("") = false
StringUtils.hasLength(" ") = true
StringUtils.hasLength("Hello") = true
str - the CharSequence to check (may be null)true if the CharSequence is not null and has lengthhasText(String)public static boolean hasLength(String str)
String is neither null nor of length 0.
Note: this method returns true for a String that
purely consists of whitespace.
str - the String to check (may be null)true if the String is not null and has lengthhasLength(CharSequence),
hasText(String)public static boolean hasText(CharSequence str)
CharSequence contains actual text.
More specifically, this method returns true if the
CharSequence is not null, its length is greater than
0, and it contains at least one non-whitespace character.
StringUtils.hasText(null) = false
StringUtils.hasText("") = false
StringUtils.hasText(" ") = false
StringUtils.hasText("12345") = true
StringUtils.hasText(" 12345 ") = true
str - the CharSequence to check (may be null)true if the CharSequence is not null,
its length is greater than 0, and it does not contain whitespace onlyCharacter.isWhitespace(char)public static boolean hasText(String str)
String contains actual text.
More specifically, this method returns true if the
String is not null, its length is greater than 0,
and it contains at least one non-whitespace character.
str - the String to check (may be null)true if the String is not null, its
length is greater than 0, and it does not contain whitespace onlyhasText(CharSequence)public static boolean containsWhitespace(CharSequence str)
CharSequence contains any whitespace characters.str - the CharSequence to check (may be null)true if the CharSequence is not empty and
contains at least 1 whitespace characterCharacter.isWhitespace(char)public static boolean containsWhitespace(String str)
String contains any whitespace characters.str - the String to check (may be null)true if the String is not empty and
contains at least 1 whitespace charactercontainsWhitespace(CharSequence)public static String trimWhitespace(String str)
String.str - the String to checkStringCharacter.isWhitespace(char)public static String trimAllWhitespace(String str)
String:
leading, trailing, and in between characters.str - the String to checkStringCharacter.isWhitespace(char)public static String trimLeadingWhitespace(String str)
String.str - the String to checkStringCharacter.isWhitespace(char)public static String trimTrailingWhitespace(String str)
String.str - the String to checkStringCharacter.isWhitespace(char)public static String trimLeadingCharacter(String str, char leadingCharacter)
String.str - the String to checkleadingCharacter - the leading character to be trimmedStringpublic static String trimTrailingCharacter(String str, char trailingCharacter)
String.str - the String to checktrailingCharacter - the trailing character to be trimmedStringpublic static boolean startsWithIgnoreCase(String str, String prefix)
String starts with the specified prefix,
ignoring upper/lower case.str - the String to checkprefix - the prefix to look forString.startsWith(java.lang.String, int)public static boolean endsWithIgnoreCase(String str, String suffix)
String ends with the specified suffix,
ignoring upper/lower case.str - the String to checksuffix - the suffix to look forString.endsWith(java.lang.String)public static boolean substringMatch(CharSequence str, int index, CharSequence substring)
str - the original string (or StringBuilder)index - the index in the original string to start matching againstsubstring - the substring to match at the given indexpublic static int countOccurrencesOf(String str, String sub)
sub in string str.str - string to search insub - string to search forpublic static String delete(String inString, String pattern)
inString - the original Stringpattern - the pattern to delete all occurrences ofStringpublic static String deleteAny(String inString, String charsToDelete)
String.inString - the original StringcharsToDelete - a set of characters to delete.
E.g. "az\n" will delete 'a's, 'z's and new lines.Stringpublic static Object quoteIfString(Object obj)
String with single quotes
if it is a String; keeping the Object as-is else.obj - the input Object (e.g. "myString")String (e.g. "'myString'"),
or the input object as-is if not a Stringpublic 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 capitalizeStringpublic 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 uncapitalizeStringpublic static String getFilename(String path)
"mypath/myfile.txt" -> "myfile.txt".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 pathpublic 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 pathpublic static boolean pathEquals(String path1, String path2)
path1 - first path for comparisonpath2 - second path for comparisonpublic static String uriDecode(String source, Charset charset)
"a" through "z", "A" through "Z",
and "0" through "9" stay the same."-", "_", ".", and "*" stay the same.%<i>xy</i>" is interpreted as a hexadecimal representation of the character.source - the encoded Stringcharset - the character setIllegalArgumentException - when the given source contains invalid encoded sequencesURLDecoder.decode(String, String)public static Locale parseLocale(String localeValue)
String value into a Locale, accepting
the Locale.toString() format as well as BCP 47 language tags.localeValue - the locale value: following either Locale's
toString() format ("en", "en_UK", etc), also accepting spaces as
separators (as an alternative to underscores), or BCP 47 (e.g. "en-UK")
as specified by Locale.forLanguageTag(java.lang.String) on Java 7+Locale instance, or null if noneIllegalArgumentException - in case of an invalid locale specificationparseLocaleString(java.lang.String),
Locale.forLanguageTag(java.lang.String)public static Locale parseLocaleString(String localeString)
String representation into a Locale.
For many parsing scenarios, this is an inverse operation of
Locale's toString, in a lenient sense.
This method does not aim for strict Locale design compliance;
it is rather specifically tailored for typical Spring parsing needs.
Note: This delegate does not accept the BCP 47 language tag format.
Please use parseLocale(java.lang.String) for lenient parsing of both formats.
localeString - the locale String: following Locale's
toString() format ("en", "en_UK", etc), also accepting spaces as
separators (as an alternative to underscores)Locale instance, or null if noneIllegalArgumentException - in case of an invalid locale specification@Deprecated public static String toLanguageTag(Locale locale)
Locale.toLanguageTag()locale - the Locale to transform to a language tagStringpublic static TimeZone parseTimeZoneString(String timeZoneString)
timeZoneString value into a TimeZone.timeZoneString - the time zone String, following TimeZone.getTimeZone(String)
but throwing IllegalArgumentException in case of an invalid time zone specificationTimeZone instanceIllegalArgumentException - in case of an invalid time zone specificationpublic static String[] addStringToArray(String[] array, String str)
String to the given String array,
returning a new array consisting of the input array contents plus
the given String.array - the array to append to (can be null)str - the String to appendnull)public static String[] concatenateStringArrays(String[] array1, String[] array2)
String arrays into one,
with overlapping array elements included twice.
The order of elements in the original arrays is preserved.
array1 - the first array (can be null)array2 - the second array (can be null)null if both given arrays were null)@Deprecated public static String[] mergeStringArrays(String[] array1, String[] array2)
LinkedHashSet
(with every entry included at most once, even entries within the first array)String arrays into one, with overlapping
array elements only included once.
The order of elements in the original arrays is preserved (with the exception of overlapping elements, which are only included on their first occurrence).
array1 - the first array (can be null)array2 - the second array (can be null)null if both given arrays were null)public static String[] sortStringArray(String[] array)
String array into sorted array.array - the source arraynull)public static String[] toStringArray(Collection<String> collection)
Collection into a String array.
The Collection must contain String elements only.
collection - the Collection to copyString arraypublic static String[] toStringArray(Enumeration<String> enumeration)
String array.
The Enumeration must contain String elements only.enumeration - the Enumeration to copyString arraypublic static String[] trimArrayElements(String[] array)
String array,
calling String.trim() on each of them.array - the original String array (potentially empty)public static String[] removeDuplicateStrings(String[] array)
As of 4.2, it preserves the original order, as it uses a LinkedHashSet.
array - the String array (potentially empty)public static String[] split(String toSplit, String delimiter)
String at the first occurrence of the delimiter.
Does not include the delimiter in the result.toSplit - the string to split (potentially null or empty)delimiter - to split the string up with (potentially null or empty)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.
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 occurProperties instance representing the array contents,
or null if the array to process was null or emptypublic static String[] tokenizeToStringArray(String str, String delimiters)
String into a String array via a
StringTokenizer.
Trims tokens and omits empty tokens.
The given delimiters string can 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(java.lang.String, java.lang.String).
str - the String to tokenize (potentially null or empty)delimiters - the delimiter characters, assembled as a String
(each of the characters is individually considered as a delimiter)StringTokenizer,
String.trim(),
delimitedListToStringArray(java.lang.String, java.lang.String)public static String[] tokenizeToStringArray(String str, String delimiters, boolean trimTokens, boolean ignoreEmptyTokens)
String into a String array via a
StringTokenizer.
The given delimiters string can 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(java.lang.String, java.lang.String).
str - the String to tokenize (potentially null or empty)delimiters - the delimiter characters, assembled as a String
(each of the characters is individually considered as a delimiter)trimTokens - trim the tokens via String.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)
String that is a delimited list and convert it into a
String array.
A single delimiter may consist of more than one character,
but it will still be considered as a single delimiter string, rather
than as bunch of potential delimiter characters, in contrast to
tokenizeToStringArray(java.lang.String, java.lang.String).
str - the input String (potentially null or empty)delimiter - 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[] delimitedListToStringArray(String str, String delimiter, String charsToDelete)
String that is a delimited list and convert it into
a String array.
A single delimiter may consist of more than one character,
but it will still be considered as a single delimiter string, rather
than as bunch of potential delimiter characters, in contrast to
tokenizeToStringArray(java.lang.String, java.lang.String).
str - the input String (potentially null or empty)delimiter - the delimiter between elements (this is a single delimiter,
rather than a bunch individual delimiter characters)charsToDelete - a set of characters to delete; useful for deleting unwanted
line breaks: e.g. "\r\n\f" will delete all new lines and line feeds in a StringtokenizeToStringArray(java.lang.String, java.lang.String)public static String[] commaDelimitedListToStringArray(String str)
str - the input String (potentially null or empty)public static Set<String> commaDelimitedListToSet(String str)
Note that this will suppress duplicates, and as of 4.2, the elements in
the returned set will preserve the original order in a LinkedHashSet.
str - the input String (potentially null or empty)String entries in the listremoveDuplicateStrings(String[])public static String collectionToDelimitedString(Collection<?> coll, String delim, String prefix, String suffix)
coll - the Collection to convert (potentially null or empty)delim - the delimiter to use (typically a ",")prefix - the String to start each element withsuffix - the String to end each element withStringpublic static String collectionToDelimitedString(Collection<?> coll, String delim)
Collection into a delimited String (e.g. CSV).
Useful for toString() implementations.
coll - the Collection to convert (potentially null or empty)delim - the delimiter to use (typically a ",")Stringpublic static String collectionToCommaDelimitedString(Collection<?> coll)
Collection into a delimited String (e.g., CSV).
Useful for toString() implementations.
coll - the Collection to convert (potentially null or empty)Stringpublic static String arrayToDelimitedString(Object[] arr, String delim)
String array into a delimited String (e.g. CSV).
Useful for toString() implementations.
arr - the array to display (potentially null or empty)delim - the delimiter to use (typically a ",")StringCopyright © 2020. All rights reserved.