Class StringUtils
- java.lang.Object
-
- io.micronaut.core.util.StringUtils
-
public final class StringUtils extends java.lang.ObjectUtility methods for Strings.- Since:
- 1.0
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringEMPTY_STRINGConstant for an empty String.static java.lang.String[]EMPTY_STRING_ARRAYConstant for an empty String array.static java.lang.StringFALSEConstant for the value false.static charSPACEa space.static java.lang.StringTRUEConstant for the value true.
-
Constructor Summary
Constructors Constructor Description StringUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.Stringcapitalize(java.lang.String str)Capitalizes the first character of the provided string.static java.lang.StringconvertDotToUnderscore(java.lang.String dottedProperty)Replace the dots in the property with underscore and transform to uppercase.static java.lang.StringconvertDotToUnderscore(java.lang.String dottedProperty, boolean uppercase)Replace the dots in the property with underscore and transform to uppercase based on given flag.static booleanhasText(java.lang.CharSequence str)Return whether the given string has non whitespace characters.static java.util.List<java.lang.String>internListOf(java.lang.Object... objects)Converts the given objects into a set of interned strings contained within an internal pool of sets.static java.util.Map<java.lang.String,java.lang.Object>internMapOf(java.lang.Object... values)Converts the given objects into a map of interned strings.static booleanisDigits(java.lang.String str)Is the given string a series of digits.static booleanisEmpty(java.lang.CharSequence str)Return whether the given string is empty.static booleanisNotEmpty(java.lang.CharSequence str)Return whether the given string is not empty.static booleanisTrue(java.lang.String booleanString)Is the boolean string true.static java.util.LocaleparseLocale(java.lang.String localeValue)Parse the givenStringvalue into aLocale, accepting theLocale.toString()format as well as BCP 47 language tags.static java.lang.StringprependUri(java.lang.String baseUri, java.lang.String uri)Prepends a partial uri and normalizes / characters.static java.lang.Iterable<java.lang.String>splitOmitEmptyStrings(java.lang.CharSequence sequence, char splitCharacter)Fast split by one character iterable.static java.util.Iterator<java.lang.String>splitOmitEmptyStringsIterator(java.lang.CharSequence sequence, char splitCharacter)Fast split by one character iterator.static java.util.List<java.lang.String>splitOmitEmptyStringsList(java.lang.CharSequence sequence, char splitCharacter)Fast split by one character iterable.static java.lang.String[]tokenizeToStringArray(java.lang.String str, java.lang.String delimiters)Tokenize the given String into a String array via a StringTokenizer.static java.lang.String[]tokenizeToStringArray(java.lang.String str, java.lang.String delimiters, boolean trimTokens, boolean ignoreEmptyTokens)Tokenize the given String into a String array via a StringTokenizer.static java.lang.StringtrimLeading(java.lang.String str, java.util.function.Predicate<java.lang.Character> predicate)Returns a new string without any leading characters that match the supplied predicate.static java.lang.StringtrimLeadingCharacter(java.lang.String str, char c)Returns a new string without any leading characters that match the supplied character.static java.lang.StringtrimLeadingWhitespace(java.lang.String str)Returns a new string without any leading whitespace.static java.lang.StringtrimToNull(java.lang.String string)Trims the supplied string.
-
-
-
Field Detail
-
TRUE
public static final java.lang.String TRUE
Constant for the value true.- See Also:
- Constant Field Values
-
FALSE
public static final java.lang.String FALSE
Constant for the value false.- See Also:
- Constant Field Values
-
EMPTY_STRING_ARRAY
public static final java.lang.String[] EMPTY_STRING_ARRAY
Constant for an empty String array.
-
EMPTY_STRING
public static final java.lang.String EMPTY_STRING
Constant for an empty String.- See Also:
- Constant Field Values
-
SPACE
public static final char SPACE
a space.- See Also:
- Constant Field Values
-
-
Method Detail
-
isEmpty
public static boolean isEmpty(@Nullable java.lang.CharSequence str)
Return whether the given string is empty.- Parameters:
str- The string- Returns:
- True if str is empty or null
-
isNotEmpty
public static boolean isNotEmpty(@Nullable java.lang.CharSequence str)
Return whether the given string is not empty.- Parameters:
str- The string- Returns:
- True if str is not null and not empty
-
hasText
public static boolean hasText(@Nullable java.lang.CharSequence str)
Return whether the given string has non whitespace characters.- Parameters:
str- The string- Returns:
- True if str contains any non whitespace characters
-
internListOf
public static java.util.List<java.lang.String> internListOf(java.lang.Object... objects)
Converts the given objects into a set of interned strings contained within an internal pool of sets. SeeString.intern().- Parameters:
objects- The objects- Returns:
- A unmodifiable, pooled set of strings
-
internMapOf
public static java.util.Map<java.lang.String,java.lang.Object> internMapOf(java.lang.Object... values)
Converts the given objects into a map of interned strings. SeeString.intern().- Parameters:
values- The objects- Returns:
- An unmodifiable set of strings
- See Also:
CollectionUtils.mapOf(Object...)
-
isDigits
public static boolean isDigits(java.lang.String str)
Is the given string a series of digits.- Parameters:
str- The string- Returns:
- True if it is a series of digits
-
parseLocale
@Nullable public static java.util.Locale parseLocale(java.lang.String localeValue)
Parse the givenStringvalue into aLocale, accepting theLocale.toString()format as well as BCP 47 language tags.- Parameters:
localeValue- the locale value: following eitherLocale'stoString()format ("en", "en_UK", etc), also accepting spaces as separators (as an alternative to underscores), or BCP 47 (e.g. "en-UK") as specified byLocale.forLanguageTag(java.lang.String)on Java 7+Copied from the Spring Framework while retaining all license, copyright and author information.
- Returns:
- a corresponding
Localeinstance, ornullif none - Throws:
java.lang.IllegalArgumentException- in case of an invalid locale specification- Since:
- 2.3.0
- See Also:
Locale.forLanguageTag(java.lang.String)
-
trimLeadingWhitespace
public static java.lang.String trimLeadingWhitespace(java.lang.String str)
Returns a new string without any leading whitespace.- Parameters:
str- The string- Returns:
- The string without leading whitespace
- Since:
- 2.3.0
-
trimLeadingCharacter
public static java.lang.String trimLeadingCharacter(java.lang.String str, char c)Returns a new string without any leading characters that match the supplied character.- Parameters:
str- The stringc- The character to remove- Returns:
- The string without leading characters matching the supplied character.
- Since:
- 2.3.0
-
trimLeading
public static java.lang.String trimLeading(java.lang.String str, java.util.function.Predicate<java.lang.Character> predicate)Returns a new string without any leading characters that match the supplied predicate.- Parameters:
str- The stringpredicate- The predicate to test characters against- Returns:
- The string without leading characters matching the supplied predicate.
- Since:
- 2.3.0
-
tokenizeToStringArray
public static java.lang.String[] tokenizeToStringArray(java.lang.String str, java.lang.String delimiters)Tokenize the given String into a String array via a StringTokenizer. Trims tokens and omits empty tokens.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
delimitedListToStringArrayCopied from the Spring Framework while retaining all license, copyright and author information.
- Parameters:
str- the String to tokenizedelimiters- the delimiter characters, assembled as String (each of those characters is individually considered as delimiter).- Returns:
- an array of the tokens
- See Also:
StringTokenizer,String.trim()
-
tokenizeToStringArray
public static java.lang.String[] tokenizeToStringArray(java.lang.String str, java.lang.String delimiters, boolean trimTokens, boolean ignoreEmptyTokens)Tokenize the given String into a String array via a StringTokenizer.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
delimitedListToStringArrayCopied from the Spring Framework while retaining all license, copyright and author information.
- Parameters:
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'strimignoreEmptyTokens- 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).- Returns:
- an array of the tokens (
nullif the input String wasnull) - See Also:
StringTokenizer,String.trim()
-
convertDotToUnderscore
public static java.lang.String convertDotToUnderscore(java.lang.String dottedProperty)
Replace the dots in the property with underscore and transform to uppercase.- Parameters:
dottedProperty- The property with dots, example - a.b.c- Returns:
- The converted value
-
convertDotToUnderscore
public static java.lang.String convertDotToUnderscore(java.lang.String dottedProperty, boolean uppercase)Replace the dots in the property with underscore and transform to uppercase based on given flag.- Parameters:
dottedProperty- The property with dots, example - a.b.cuppercase- To transform to uppercase string- Returns:
- The converted value
-
prependUri
public static java.lang.String prependUri(java.lang.String baseUri, java.lang.String uri)Prepends a partial uri and normalizes / characters. For example, if the base uri is "/foo/" and the uri is "/bar/", the output will be "/foo/bar/". Similarly if the base uri is "/foo" and the uri is "bar", the output will be "/foo/bar"- Parameters:
baseUri- The uri to prepend. Eg. /foouri- The uri to combine with the baseUri. Eg. /bar- Returns:
- A combined uri string
-
capitalize
public static java.lang.String capitalize(java.lang.String str)
Capitalizes the first character of the provided string.- Parameters:
str- The string to capitalize- Returns:
- The capitalized string
-
trimToNull
@Nullable public static java.lang.String trimToNull(@Nullable java.lang.String string)
Trims the supplied string. If the string is empty or null before or after trimming, null is returned.- Parameters:
string- the string to trim- Returns:
- the trimmed string or null
-
isTrue
public static boolean isTrue(java.lang.String booleanString)
Is the boolean string true. Values that represent true are: yes, y, on, and true.- Parameters:
booleanString- The boolean string- Returns:
- True if it is a valid value
-
splitOmitEmptyStrings
public static java.lang.Iterable<java.lang.String> splitOmitEmptyStrings(java.lang.CharSequence sequence, char splitCharacter)Fast split by one character iterable. Implementation omits empty strings. This should be a fast alternative toString.split(String)where it's used with one character.- Parameters:
sequence- The sequence to splitsplitCharacter- The split character- Returns:
- The iterable of possible sequences
- Since:
- 2.5.0
-
splitOmitEmptyStringsList
public static java.util.List<java.lang.String> splitOmitEmptyStringsList(java.lang.CharSequence sequence, char splitCharacter)Fast split by one character iterable. Implementation omits empty strings. This should be a fast alternative toString.split(String)where it's used with one character.- Parameters:
sequence- The sequence to splitsplitCharacter- The split character- Returns:
- The list of possible sequences
- Since:
- 2.5.0
-
splitOmitEmptyStringsIterator
public static java.util.Iterator<java.lang.String> splitOmitEmptyStringsIterator(java.lang.CharSequence sequence, char splitCharacter)Fast split by one character iterator. Implementation omits empty strings. This should be a fast alternative toString.split(String)where it's used with one character.- Parameters:
sequence- The sequence to splitsplitCharacter- The split character- Returns:
- The iterator of possible sequences
- Since:
- 2.5.0
-
-