Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
org.codehaus.plexus.util.StringUtils
public class StringUtils
extends java.lang.Object
String
manipulation routines.
Originally from
Turbine and the
GenerationJavaCore library.
Constructor Summary | |
|
Method Summary | |
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static int |
|
static String |
|
static String |
|
static String |
|
static String |
|
static int |
|
static boolean |
|
static boolean |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static int |
|
static String |
|
static boolean |
|
static boolean |
|
static boolean |
|
static boolean |
|
static boolean |
|
static boolean |
|
static boolean |
|
static boolean |
|
static boolean |
|
static String |
|
static String |
|
static int |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
private static void |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String[] |
|
static String[] |
|
static String[] |
|
static String |
|
static String |
|
static String[] |
|
static String[] |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
static String |
|
public StringUtils()
StringUtils
instances should NOT be constructed in standard programming. Instead, the class should be used asStringUtils.trim(" foo ");
. This constructor is public to permit tools that require a JavaBean manager to operate.
public static String abbreviate(String s, int maxWidth)
Turn "Now is the time for all good men" into "Now is the time for..." Specifically: If str is less than max characters long, return it. Else abbreviate it to (substring(str, 0, max-3) + "..."). If maxWidth is less than 3, throw an IllegalArgumentException. In no case will it return a string of length greater than maxWidth.
- Parameters:
maxWidth
- maximum length of result string
public static String abbreviate(String s, int offset, int maxWidth)
Turn "Now is the time for all good men" into "...is the time for..." Works like abbreviate(String, int), but allows you to specify a "left edge" offset. Note that this left edge is not necessarily going to be the leftmost character in the result, or the first character following the ellipses, but it will appear somewhere in the result. In no case will it return a string of length greater than maxWidth.
- Parameters:
offset
- left edge of source stringmaxWidth
- maximum length of result string
public static String addAndDeHump(String view)
public static String capitalise(String str)
Capitalise a String. That is, convert the first character into title-case.null
is returned asnull
.
- Parameters:
str
- the String to capitalise
- Returns:
- capitalised String
public static String capitaliseAllWords(String str)
Capitalise all the words in a String. UsesCharacter.isWhitespace(char)
as a separator between words.null
will returnnull
.
- Parameters:
str
- the String to capitalise
- Returns:
- capitalised String
public static String capitalizeFirstLetter(String data)
public static String center(String str, int size)
Center a String in a larger String of sizen
. Uses spaces as the value to buffer the String with. Equivalent tocenter(str, size, " ")
.
- Parameters:
str
- String to centersize
- int size of new String
- Returns:
- String containing centered String
public static String center(String str, int size, String delim)
Center a String in a larger String of sizen
. Uses a supplied String as the value to buffer the String with.
- Parameters:
str
- String to centersize
- int size of new Stringdelim
- String to buffer the new String with
- Returns:
- String containing centered String
public static String chomp(String str)
Remove the last newline, and everything after it from a String.
- Parameters:
str
- String to chomp the newline from
- Returns:
- String without chomped newline
public static String chomp(String str, String sep)
Remove the last value of a supplied String, and everything after it from a String.
- Parameters:
str
- String to chomp fromsep
- String to chomp
- Returns:
- String without chomped ending
public static String chompLast(String str)
Remove a newline if and only if it is at the end of the supplied String.
- Parameters:
str
- String to chomp from
- Returns:
- String without chomped ending
public static String chompLast(String str, String sep)
Remove a value if and only if the String ends with that value.
- Parameters:
str
- String to chomp fromsep
- String to chomp
- Returns:
- String without chomped ending
public static String chop(String str)
Remove the last character from a String. If the String ends in\r\n
, then remove both of them.
- Parameters:
str
- String to chop last character from
- Returns:
- String without last character
public static String chopNewline(String str)
Remove\n
from end of a String if it's there. If a\r
precedes it, then remove that too.
- Parameters:
str
- String to chop a newline from
- Returns:
- String without newline
public static String clean(String str)
Removes control characters, including whitespace, from both ends of this String, handlingnull
by returning an empty String.
- Parameters:
str
- the String to check
- Returns:
- the trimmed text (never
null
)
- See Also:
java.lang.String.trim()
public static String concatenate(Object[] array)
Concatenates elements of an array into a single String. The difference from join is that concatenate has no delimiter.
- Parameters:
array
- the array of values to concatenate.
- Returns:
- the concatenated string.
public static int countMatches(String str, String sub)
How many times is the substring in the larger String.null
returns0
.
- Parameters:
str
- the String to checksub
- the substring to count
- Returns:
- the number of occurances, 0 if the String is
null
public static String defaultString(Object obj)
Returns either the passed inObject
as a String, or, if theObject
isnull
, an empty String.
- Parameters:
obj
- the Object to check
- Returns:
- the passed in Object's toString, or blank if it was
null
public static String defaultString(Object obj, String defaultString)
Returns either the passed inObject
as a String, or, if theObject
isnull
, a passed in default String.
- Parameters:
obj
- the Object to checkdefaultString
- the default String to return if str isnull
- Returns:
- the passed in string, or the default if it was
null
public static String deleteWhitespace(String str)
Deletes all whitespaces from a String. Whitespace is defined byCharacter.isWhitespace(char)
.
- Parameters:
str
- String target to delete whitespace from
- Returns:
- the String without whitespaces
public static String difference(String s1, String s2)
Compare two strings, and return the portion where they differ. (More precisely, return the remainder of the second string, starting from where it's different from the first.) E.g. strdiff("i am a machine", "i am a robot") -> "robot"
- Returns:
- the portion of s2 where it differs from s1; returns the empty string ("") if they are equal
public static int differenceAt(String s1, String s2)
Compare two strings, and return the index at which the strings begin to differ. E.g. strdiff("i am a machine", "i am a robot") -> 7
- Returns:
- the index where s2 and s1 begin to differ; -1 if they are equal
public static boolean equals(String str1, String str2)
Compares two Strings, returningtrue
if they are equal.null
s are handled without exceptions. Twonull
references are considered to be equal. The comparison is case sensitive.
- Parameters:
str1
- the first stringstr2
- the second string
- Returns:
true
if the Strings are equal, case sensitive, or bothnull
- See Also:
java.lang.String.equals(Object)
public static boolean equalsIgnoreCase(String str1, String str2)
Compares two Strings, returningtrue
if they are equal ignoring the case.Nulls
are handled without exceptions. Twonull
references are considered equal. Comparison is case insensitive.
- Parameters:
str1
- the first stringstr2
- the second string
- Returns:
true
if the Strings are equal, case insensitive, or bothnull
- See Also:
java.lang.String.equalsIgnoreCase(String)
public static String escape(String str)
Escapes any values it finds into their String form. So a tab becomes the characters'\\'
and't'
.
- Parameters:
str
- String to escape values in
- Returns:
- String with escaped values
public static String getChomp(String str, String sep)
Remove everything and return the last value of a supplied String, and everything after it from a String.
- Parameters:
str
- String to chomp fromsep
- String to chomp
- Returns:
- String chomped
public static String getNestedString(String str, String tag)
Get the String that is nested in between two instances of the same String. Ifstr
isnull
, will returnnull
.
- Parameters:
str
- the String containing nested-stringtag
- the String before and after nested-string
- Returns:
- the String that was nested, or
null
public static String getNestedString(String str, String open, String close)
Get the String that is nested in between two Strings.
- Parameters:
str
- the String containing nested-stringopen
- the String before nested-stringclose
- the String after nested-string
- Returns:
- the String that was nested, or
null
public static String getPrechomp(String str, String sep)
Remove and return everything before the first value of a supplied String from another String.
- Parameters:
str
- String to chomp fromsep
- String to chomp
- Returns:
- String prechomped
public static int indexOfAny(String str, String[] searchStrs)
Find the first index of any of a set of potential substrings.null
String will return-1
.
- Parameters:
str
- the String to checksearchStrs
- the Strings to search for
- Returns:
- the first index of any of the searchStrs in str
public static String interpolate(String text, Map namespace)
public static boolean isAlpha(String str)
Checks if the String contains only unicode letters.null
will returnfalse
. An empty String will returntrue
.
- Parameters:
str
- the String to check
- Returns:
true
if only contains letters, and is non-null
public static boolean isAlphaSpace(String str)
Checks if the String contains only unicode letters and space (' '
).null
will returnfalse
. An empty String will returntrue
.
- Parameters:
str
- the String to check
- Returns:
true
if only contains letters and space, and is non-null
public static boolean isAlphanumeric(String str)
Checks if the String contains only unicode letters or digits.null
will returnfalse
. An empty String will returntrue
.
- Parameters:
str
- the String to check
- Returns:
true
if only contains letters or digits, and is non-null
public static boolean isAlphanumericSpace(String str)
Checks if the String contains only unicode letters, digits or space (' '
).null
will returnfalse
. An empty String will returntrue
.
- Parameters:
str
- the String to check
- Returns:
true
if only contains letters, digits or space, and is non-null
public static boolean isEmpty(String str)
Checks if a (trimmed) String isnull
or empty.
- Parameters:
str
- the String to check
- Returns:
true
if the String isnull
, or length zero once trimmed
public static boolean isNotEmpty(String str)
Checks if a String is nonnull
and is not empty (length > 0
).
- Parameters:
str
- the String to check
- Returns:
- true if the String is non-null, and not length zero
public static boolean isNumeric(String str)
Checks if the String contains only unicode digits.null
will returnfalse
. An empty String will returntrue
.
- Parameters:
str
- the String to check
- Returns:
true
if only contains digits, and is non-null
public static boolean isNumericSpace(String str)
Checks if the String contains only unicode digits or space (' '
).null
will returnfalse
. An empty String will returntrue
.
- Parameters:
str
- the String to check
- Returns:
true
if only contains digits or space, and is non-null
public static boolean isWhitespace(String str)
Checks if the String contains only whitespace.null
will returnfalse
. An empty String will returntrue
.
- Parameters:
str
- the String to check
- Returns:
true
if only contains whitespace, and is non-null
public static String join(Iterator iterator, String separator)
Joins the elements of the providedIterator
into a single String containing the provided elements. No delimiter is added before or after the list. Anull
separator is the same as a blank String.
- Parameters:
iterator
- theIterator
of values to join togetherseparator
- the separator character to use
- Returns:
- the joined String
public static String join(Object[] array, String separator)
Joins the elements of the provided array into a single String containing the provided list of elements. No delimiter is added before or after the list. Anull
separator is the same as a blank String.
- Parameters:
array
- the array of values to join togetherseparator
- the separator character to use
- Returns:
- the joined String
public static int lastIndexOfAny(String str, String[] searchStrs)
Find the latest index of any of a set of potential substrings.null
string will return-1
.
- Parameters:
str
- the String to checksearchStrs
- the Strings to search for
- Returns:
- the last index of any of the Strings
public static String left(String str, int len)
Gets the leftmostn
characters of a String. Ifn
characters are not available, or the String isnull
, the String will be returned without an exception.
- Parameters:
str
- the String to get the leftmost characters fromlen
- the length of the required String
- Returns:
- the leftmost characters
public static String leftPad(String str, int size)
Left pad a String with spaces. The String is padded to the size ofn
.
- Parameters:
str
- String to pad outsize
- size to pad to
- Returns:
- left padded String
public static String leftPad(String str, int size, String delim)
Left pad a String with a specified string. Pad to a size of n.
- Parameters:
str
- String to pad outsize
- size to pad todelim
- String to pad with
- Returns:
- left padded String
public static String lowerCase(String str)
Convert a String to lower case,null
String returnsnull
.
- Parameters:
str
- the string to lowercase
- Returns:
- the lower cased String
public static String lowercaseFirstLetter(String data)
public static String mid(String str, int pos, int len)
Getsn
characters from the middle of a String. Ifn
characters are not available, the remainder of the String will be returned without an exception. If the String isnull
,null
will be returned.
- Parameters:
str
- the String to get the characters frompos
- the position to start fromlen
- the length of the required String
- Returns:
- the leftmost characters
public static String overlayString(String text, String overlay, int start, int end)
Overlay a part of a String with another String.
- Parameters:
text
- String to do overlaying inoverlay
- String to overlaystart
- int to start overlaying atend
- int to stop overlaying before
- Returns:
- String with overlayed text
public static String prechomp(String str, String sep)
Remove the first value of a supplied String, and everything before it from a String.
- Parameters:
str
- String to chomp fromsep
- String to chomp
- Returns:
- String without chomped beginning
public static String removeAndHump(String data, String replaceThis)
public static String repeat(String str, int repeat)
Repeat a Stringn
times to form a new string.
- Parameters:
str
- String to repeatrepeat
- number of times to repeat str
- Returns:
- String with repeated String
public static String replace(String text, String repl, String with)
Replace all occurances of a String within another String. Anull
reference passed to this method is a no-op.
- Parameters:
text
- text to search and replace inrepl
- String to search forwith
- String to replace with
- Returns:
- the text with any replacements processed
- See Also:
replace(String text, String repl, String with, int max)
public static String replace(String text, String repl, String with, int max)
Replace a String with another String inside a larger String, for the firstmax
values of the search String. Anull
reference passed to this method is a no-op.
- Parameters:
text
- text to search and replace inrepl
- String to search forwith
- String to replace withmax
- maximum number of values to replace, or-1
if no maximum
- Returns:
- the text with any replacements processed
public static String replace(String text, char repl, char with)
Replace all occurances of a char within another char. Anull
reference passed to this method is a no-op.
- Parameters:
text
- text to search and replace inrepl
- char to search forwith
- char to replace with
- Returns:
- the text with any replacements processed
- See Also:
replace(String text, char repl, char with, int max)
public static String replace(String text, char repl, char with, int max)
Replace a char with another char inside a larger String, for the firstmax
values of the search char. Anull
reference passed to this method is a no-op.
- Parameters:
text
- text to search and replace inrepl
- char to search forwith
- char to replace withmax
- maximum number of values to replace, or-1
if no maximum
- Returns:
- the text with any replacements processed
public static String replaceOnce(String text, String repl, String with)
Replace a String with another String inside a larger String, once. Anull
reference passed to this method is a no-op.
- Parameters:
text
- text to search and replace inrepl
- String to search forwith
- String to replace with
- Returns:
- the text with any replacements processed
- See Also:
replace(String text, String repl, String with, int max)
public static String replaceOnce(String text, char repl, char with)
Replace a char with another char inside a larger String, once. Anull
reference passed to this method is a no-op.
- Parameters:
text
- text to search and replace inrepl
- char to search forwith
- char to replace with
- Returns:
- the text with any replacements processed
- See Also:
replace(String text, char repl, char with, int max)
public static String reverse(String str)
Reverse a String.null
String returnsnull
.
- Parameters:
str
- the String to reverse
- Returns:
- the reversed String
private static void reverseArray(Object[] array)
Reverses an array. TAKEN FROM CollectionsUtils.
- Parameters:
array
- the array to reverse
public static String reverseDelimitedString(String str, String delimiter)
Reverses a String that is delimited by a specific character. The Strings between the delimiters are not reversed. Thus java.lang.String becomes String.lang.java (if the delimiter is'.'
).
- Parameters:
str
- the String to reversedelimiter
- the delimiter to use
- Returns:
- the reversed String
public static String right(String str, int len)
Gets the rightmostn
characters of a String. Ifn
characters are not available, or the String isnull
, the String will be returned without an exception.
- Parameters:
str
- the String to get the rightmost characters fromlen
- the length of the required String
- Returns:
- the leftmost characters
public static String rightPad(String str, int size)
Right pad a String with spaces. The String is padded to the size ofn
.
- Parameters:
str
- String to repeatsize
- number of times to repeat str
- Returns:
- right padded String
public static String rightPad(String str, int size, String delim)
Right pad a String with a specified string. The String is padded to the size ofn
.
- Parameters:
str
- String to pad outsize
- size to pad todelim
- String to pad with
- Returns:
- right padded String
public static String[] split(String str)
Splits the provided text into a array, using whitespace as the separator. The separator is not included in the returned String array.
- Parameters:
str
- the String to parse
- Returns:
- an array of parsed Strings
public static String[] split(String str, String separator, int max)
Splits the provided text into a array, based on a given separator. The separator is not included in the returned String array. The maximum number of splits to perfom can be controlled. Anull
separator will cause parsing to be on whitespace. This is useful for quickly splitting a String directly into an array of tokens, instead of an enumeration of tokens (asStringTokenizer
does).
- Parameters:
str
- The string to parse.separator
- Characters used as the delimiters. Ifnull
, splits on whitespace.max
- The maximum number of elements to include in the array. A zero or negative value implies no limit.
- Returns:
- an array of parsed Strings
public static String strip(String str)
Remove whitespace from the front and back of a String.
- Parameters:
str
- the String to remove whitespace from
- Returns:
- the stripped String
public static String strip(String str, String delim)
Remove a specified String from the front and back of a String. If whitespace is wanted to be removed, used thestrip(java.lang.String)
method.
- Parameters:
str
- the String to remove a string fromdelim
- the String to remove at start and end
- Returns:
- the stripped String
public static String[] stripAll(String[] strs)
Strip whitespace from the front and back of every String in the array.
- Parameters:
strs
- the Strings to remove whitespace from
- Returns:
- the stripped Strings
public static String[] stripAll(String[] strs, String delimiter)
Strip the specified delimiter from the front and back of every String in the array.
- Parameters:
strs
- the Strings to remove a String fromdelimiter
- the String to remove at start and end
- Returns:
- the stripped Strings
public static String stripEnd(String str, String strip)
Strip any of a supplied String from the end of a String. If the strip String isnull
, whitespace is stripped.
- Parameters:
str
- the String to remove characters fromstrip
- the String to remove
- Returns:
- the stripped String
public static String stripStart(String str, String strip)
Strip any of a supplied String from the start of a String. If the strip String isnull
, whitespace is stripped.
- Parameters:
str
- the String to remove characters fromstrip
- the String to remove
- Returns:
- the stripped String
public static String substring(String str, int start)
Gets a substring from the specified string avoiding exceptions. A negative start position can be used to startn
characters from the end of the String.
- Parameters:
str
- the String to get the substring fromstart
- the position to start from, negative means count back from the end of the String by this many characters
- Returns:
- substring from start position
public 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/endn
characters from the end of the String.
- Parameters:
str
- the String to get the substring fromstart
- 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 characters
- Returns:
- substring from start position to end positon
public static String swapCase(String str)
Swaps the case of String. Properly looks after making sure the start of words are Titlecase and not Uppercase.null
is returned asnull
.
- Parameters:
str
- the String to swap the case of
- Returns:
- the modified String
public static String trim(String str)
Removes control characters, including whitespace, from both ends of this String, handlingnull
by returningnull
.
- Parameters:
str
- the String to check
- Returns:
- the trimmed text (or
null
)
- See Also:
java.lang.String.trim()
public static String uncapitalise(String str)
Uncapitalise a String. That is, convert the first character into lower-case.null
is returned asnull
.
- Parameters:
str
- the String to uncapitalise
- Returns:
- uncapitalised String
public static String uncapitaliseAllWords(String str)
Uncapitalise all the words in a string. UsesCharacter.isWhitespace(char)
as a separator between words.null
will returnnull
.
- Parameters:
str
- the string to uncapitalise
- Returns:
- uncapitalised string
public static String upperCase(String str)
Convert a String to upper case,null
String returnsnull
.
- Parameters:
str
- the String to uppercase
- Returns:
- the upper cased String