类 StringUtils
- java.lang.Object
-
- com.alibaba.nacos.common.utils.StringUtils
-
public class StringUtils extends java.lang.Objectstring util.- 作者:
- Nacos, zzq
-
-
字段概要
字段 修饰符和类型 字段 说明 static java.lang.StringCOMMAstatic java.lang.StringDOTstatic java.lang.StringEMPTYprivate static java.lang.String[]EMPTY_STRING_ARRAYprivate static java.lang.StringFOLDER_SEPARATORprivate static intINDEX_NOT_FOUNDstatic java.lang.StringLFprivate static java.lang.StringTOP_PATHprivate static java.lang.StringWINDOWS_FOLDER_SEPARATOR
-
构造器概要
构造器 构造器 说明 StringUtils()
-
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static java.lang.StringapplyRelativePath(java.lang.String path, java.lang.String relativePath)Apply the given relative path to the given Java resource path, assuming standard Java folder separation (i.e. "/" separators).static java.lang.Stringcapitalize(java.lang.String str)Capitalize aString, changing the first letter to upper case as perCharacter.toUpperCase(char).private static java.lang.StringchangeFirstCharacterCase(java.lang.String str, boolean capitalize)static java.lang.StringcleanPath(java.lang.String path)Normalize the path by suppressing sequences like "path/.." and inner simple dots.static java.lang.StringcollectionToDelimitedString(java.util.Collection<?> coll, java.lang.String delim)Convert aCollectioninto a delimitedString(e.g.static java.lang.StringcollectionToDelimitedString(java.util.Collection<?> coll, java.lang.String delim, java.lang.String prefix, java.lang.String suffix)Convert aCollectionto a delimitedString(e.g.static booleancontains(java.lang.CharSequence str, java.lang.CharSequence searchStr)Checks if CharSequence contains a search CharSequence.static booleancontainsIgnoreCase(java.lang.CharSequence str, java.lang.CharSequence searchStr)Checks if CharSequence contains a search CharSequence irrespective of case, handlingnull.private static booleancontainsText(java.lang.CharSequence str)static java.lang.StringdefaultIfEmpty(java.lang.String str, java.lang.String defaultStr)Returns either the passed in CharSequence, or if the CharSequence is empty ornull, the value ofdefaultStr.static java.lang.StringdeleteAny(java.lang.String inString, java.lang.String charsToDelete)Delete any character in a givenString.static java.lang.StringdeleteWhitespace(java.lang.String str)Deletes all whitespaces from a String as defined byCharacter.isWhitespace(char).static java.lang.String[]delimitedListToStringArray(java.lang.String str, java.lang.String delimiter)Take aStringthat is a delimited list and convert it into aStringarray.static java.lang.String[]delimitedListToStringArray(java.lang.String str, java.lang.String delimiter, java.lang.String charsToDelete)Take aStringthat is a delimited list and convert it into aStringarray.static booleanequals(java.lang.String str1, java.lang.String str2)Compares two CharSequences, returningtrueif they represent equal sequences of characters.static booleanequalsIgnoreCase(java.lang.String str1, java.lang.String str2)Compares two CharSequences, returningtrueif they represent equal sequences of characters, ignoring case.static java.lang.StringescapeJavaScript(java.lang.String str)private static voidescapeJavaStyleString(java.io.Writer out, java.lang.String str, boolean escapeSingleQuote, boolean escapeForwardSlash)private static java.lang.StringescapeJavaStyleString(java.lang.String str, boolean escapeSingleQuotes, boolean escapeForwardSlash)static java.lang.StringgetFilename(java.lang.String path)Extract the filename from the given Java resource path, e.g.static booleanhasLength(java.lang.String str)Check that the givenStringis neithernullnor of length 0.static booleanhasText(java.lang.String str)Check whether the givenStringcontains actual text.private static java.lang.Stringhex(char ch)static booleanisAnyBlank(java.lang.CharSequence... css)Checks if any one of the CharSequences are blank ("") or null and not whitespace only..static booleanisBlank(java.lang.CharSequence cs)Checks if a string is empty (""), null and whitespace only.static booleanisEmpty(java.lang.String str)Checks if a str is empty ("") or null.static booleanisNoneBlank(java.lang.CharSequence... css)Checks if none of the CharSequences are blank ("") or null and whitespace only..static booleanisNotBlank(java.lang.String str)Checks if a string is not empty (""), not null and not whitespace only.static booleanisNotEmpty(java.lang.String str)Checks if a str is not empty ("") or not null.static java.lang.Stringjoin(java.util.Collection collection, java.lang.String separator)Joins the elements of the provided array into a single String containing the provided list of elements.static java.lang.StringnewStringForUtf8(byte[] bytes)Create a string with encoding format as utf8.static java.lang.Stringreplace(java.lang.String inString, java.lang.String oldPattern, java.lang.String newPattern)Replace all occurrences of a substring within a string with another string.static java.lang.String[]split(java.lang.String str, java.lang.String separatorChars)Splits the provided text into an array with a maximum length, separators specified.static booleanstartsWith(java.lang.CharSequence str, java.lang.CharSequence prefix)Check if a CharSequence starts with a specified prefix.private static booleanstartsWith(java.lang.CharSequence str, java.lang.CharSequence prefix, boolean ignoreCase)Check if a CharSequence starts with a specified prefix (optionally case insensitive).static booleanstartsWithIgnoreCase(java.lang.CharSequence str, java.lang.CharSequence prefix)Case insensitive check if a CharSequence starts with a specified prefix.static java.lang.StringsubstringBetween(java.lang.String str, java.lang.String open, java.lang.String close)Substring between two index.private static java.lang.String[]tokenizeLocaleSource(java.lang.String localeSource)static java.lang.String[]tokenizeToStringArray(java.lang.String str, java.lang.String delimiters, boolean trimTokens, boolean ignoreEmptyTokens)Tokenize the givenStringinto aStringarray via aStringTokenizer.static java.lang.String[]toStringArray(java.util.Collection<java.lang.String> collection)Copy the givenCollectioninto aStringarray.static java.lang.Stringtrim(java.lang.String str)Removes control characters (char <= 32) from both ends of this String, handlingnullby returningnull.
-
-
-
字段详细资料
-
DOT
public static final java.lang.String DOT
- 另请参阅:
- 常量字段值
-
INDEX_NOT_FOUND
private static final int INDEX_NOT_FOUND
- 另请参阅:
- 常量字段值
-
COMMA
public static final java.lang.String COMMA
- 另请参阅:
- 常量字段值
-
EMPTY
public static final java.lang.String EMPTY
- 另请参阅:
- 常量字段值
-
LF
public static final java.lang.String LF
- 另请参阅:
- 常量字段值
-
EMPTY_STRING_ARRAY
private static final java.lang.String[] EMPTY_STRING_ARRAY
-
TOP_PATH
private static final java.lang.String TOP_PATH
- 另请参阅:
- 常量字段值
-
FOLDER_SEPARATOR
private static final java.lang.String FOLDER_SEPARATOR
- 另请参阅:
- 常量字段值
-
WINDOWS_FOLDER_SEPARATOR
private static final java.lang.String WINDOWS_FOLDER_SEPARATOR
- 另请参阅:
- 常量字段值
-
-
方法详细资料
-
newStringForUtf8
public static java.lang.String newStringForUtf8(byte[] bytes)
Create a string with encoding format as utf8.
- 参数:
bytes- the bytes that make up the string- 返回:
- created string
-
isBlank
public static boolean isBlank(java.lang.CharSequence cs)
Checks if a string is empty (""), null and whitespace only.
- 参数:
cs- the string to check- 返回:
trueif the string is empty and null and whitespace
-
isNotBlank
public static boolean isNotBlank(java.lang.String str)
Checks if a string is not empty (""), not null and not whitespace only.
- 参数:
str- the string to check, may be null- 返回:
trueif the string is not empty and not null and not whitespace
-
isNotEmpty
public static boolean isNotEmpty(java.lang.String str)
Checks if a str is not empty ("") or not null.
- 参数:
str- the str to check, may be null- 返回:
trueif the str is not empty or not null
-
isEmpty
public static boolean isEmpty(java.lang.String str)
Checks if a str is empty ("") or null.
- 参数:
str- the str to check, may be null- 返回:
trueif the str is empty or null
-
defaultIfEmpty
public static java.lang.String defaultIfEmpty(java.lang.String str, java.lang.String defaultStr)Returns either the passed in CharSequence, or if the CharSequence is empty or
null, the value ofdefaultStr.- 参数:
str- the CharSequence to check, may be nulldefaultStr- the default CharSequence to return if the input is empty ("") ornull, may be null- 返回:
- the passed in CharSequence, or the default
-
equals
public static boolean equals(java.lang.String str1, java.lang.String str2)Compares two CharSequences, returning
trueif they represent equal sequences of characters.- 参数:
str1- the first string, may benullstr2- the second string, may benull- 返回:
trueif the string are equal (case-sensitive), or bothnull- 另请参阅:
Object.equals(Object)
-
trim
public static java.lang.String trim(java.lang.String str)
Removes control characters (char <= 32) from both ends of this String, handling
nullby returningnull.- 参数:
str- the String to be trimmed, may be null- 返回:
- the trimmed string,
nullif null String input
-
substringBetween
public static java.lang.String substringBetween(java.lang.String str, java.lang.String open, java.lang.String close)Substring between two index.- 参数:
str- stringopen- start index to subclose- end index to sub- 返回:
- substring
-
join
public static java.lang.String join(java.util.Collection collection, java.lang.String separator)Joins the elements of the provided array into a single String containing the provided list of elements.
- 参数:
collection- the Collection of values to join together, may be nullseparator- the separator string to use- 返回:
- the joined String,
nullif null array input
-
escapeJavaScript
public static java.lang.String escapeJavaScript(java.lang.String str)
-
escapeJavaStyleString
private static java.lang.String escapeJavaStyleString(java.lang.String str, boolean escapeSingleQuotes, boolean escapeForwardSlash)
-
escapeJavaStyleString
private static void escapeJavaStyleString(java.io.Writer out, java.lang.String str, boolean escapeSingleQuote, boolean escapeForwardSlash) throws java.io.IOException- 抛出:
java.io.IOException
-
hex
private static java.lang.String hex(char ch)
-
containsIgnoreCase
public static boolean containsIgnoreCase(java.lang.CharSequence str, java.lang.CharSequence searchStr)Checks if CharSequence contains a search CharSequence irrespective of case, handlingnull. Case-insensitivity is defined as byString.equalsIgnoreCase(String).A
nullCharSequence will returnfalse.- 参数:
str- the CharSequence to check, may be nullsearchStr- the CharSequence to find, may be null- 返回:
- true if the CharSequence contains the search CharSequence irrespective of case or false if not or
nullstring input
-
contains
public static boolean contains(java.lang.CharSequence str, java.lang.CharSequence searchStr)Checks if CharSequence contains a search CharSequence.- 参数:
str- the CharSequence to check, may be nullsearchStr- the CharSequence to find, may be null- 返回:
- true if the CharSequence contains the search CharSequence
-
isNoneBlank
public static boolean isNoneBlank(java.lang.CharSequence... css)
Checks if none of the CharSequences are blank ("") or null and whitespace only..
- 参数:
css- the CharSequences to check, may be null or empty- 返回:
trueif none of the CharSequences are blank or null or whitespace only
-
isAnyBlank
public static boolean isAnyBlank(java.lang.CharSequence... css)
Checks if any one of the CharSequences are blank ("") or null and not whitespace only..
- 参数:
css- the CharSequences to check, may be null or empty- 返回:
trueif any of the CharSequences are blank or null or whitespace only
-
startsWith
public static boolean startsWith(java.lang.CharSequence str, java.lang.CharSequence prefix)Check if a CharSequence starts with a specified prefix.
nulls are handled without exceptions. Twonullreferences are considered to be equal. The comparison is case sensitive.- 参数:
str- the CharSequence to check, may be nullprefix- the prefix to find, may be null- 返回:
trueif the CharSequence starts with the prefix, case sensitive, or bothnull- 另请参阅:
String.startsWith(String)
-
startsWith
private static boolean startsWith(java.lang.CharSequence str, java.lang.CharSequence prefix, boolean ignoreCase)Check if a CharSequence starts with a specified prefix (optionally case insensitive).
- 参数:
str- the CharSequence to check, may be nullprefix- the prefix to find, may be nullignoreCase- indicates whether the compare should ignore case (case insensitive) or not.- 返回:
trueif the CharSequence starts with the prefix or bothnull- 另请参阅:
String.startsWith(String)
-
startsWithIgnoreCase
public static boolean startsWithIgnoreCase(java.lang.CharSequence str, java.lang.CharSequence prefix)Case insensitive check if a CharSequence starts with a specified prefix.
nulls are handled without exceptions. Twonullreferences are considered to be equal. The comparison is case insensitive.- 参数:
str- the CharSequence to check, may be nullprefix- the prefix to find, may be null- 返回:
trueif the CharSequence starts with the prefix, case insensitive, or bothnull- 另请参阅:
String.startsWith(String)
-
deleteWhitespace
public static java.lang.String deleteWhitespace(java.lang.String str)
Deletes all whitespaces from a String as defined by
Character.isWhitespace(char).- 参数:
str- the String to delete whitespace from, may be null- 返回:
- the String without whitespaces,
nullif null String input
-
equalsIgnoreCase
public static boolean equalsIgnoreCase(java.lang.String str1, java.lang.String str2)Compares two CharSequences, returning
trueif they represent equal sequences of characters, ignoring case.- 参数:
str1- the first string, may be nullstr2- the second string, may be null- 返回:
trueif the string are equal, case insensitive, or bothnull
-
split
public static java.lang.String[] split(java.lang.String str, java.lang.String separatorChars)Splits the provided text into an array with a maximum length, separators specified. If separatorChars is empty, divide by blank.- 参数:
str- the String to parse, may be null- 返回:
- an array of parsed Strings
-
tokenizeLocaleSource
private static java.lang.String[] tokenizeLocaleSource(java.lang.String localeSource)
-
tokenizeToStringArray
public static java.lang.String[] tokenizeToStringArray(java.lang.String str, java.lang.String delimiters, boolean trimTokens, boolean ignoreEmptyTokens)Tokenize the givenStringinto aStringarray via aStringTokenizer.The given
delimitersstring 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;- 参数:
str- theStringto tokenize (potentiallynullor empty)delimiters- the delimiter characters, assembled as aString(each of the characters is individually considered as a delimiter)trimTokens- trim the tokens viaString.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).- 返回:
- an array of the tokens
- 另请参阅:
StringTokenizer,String.trim()
-
toStringArray
public static java.lang.String[] toStringArray(java.util.Collection<java.lang.String> collection)
Copy the givenCollectioninto aStringarray.The
Collectionmust containStringelements only.- 参数:
collection- theCollectionto copy (potentiallynullor empty)- 返回:
- the resulting
Stringarray
-
hasText
public static boolean hasText(java.lang.String str)
Check whether the givenStringcontains actual text.More specifically, this method returns
trueif theStringis notnull, its length is greater than 0, and it contains at least one non-whitespace character.- 参数:
str- theStringto check (may benull)- 返回:
trueif theStringis notnull, its length is greater than 0, and it does not contain whitespace only- 另请参阅:
Character.isWhitespace(char)
-
containsText
private static boolean containsText(java.lang.CharSequence str)
-
cleanPath
public static java.lang.String cleanPath(java.lang.String path)
Normalize the path by suppressing sequences like "path/.." and inner simple dots.The result is convenient for path comparison. For other uses, notice that Windows separators ("\") are replaced by simple slashes.
NOTE that
cleanPathshould not be depended upon in a security context. Other mechanisms should be used to prevent path-traversal issues.- 参数:
path- the original path- 返回:
- the normalized path
-
collectionToDelimitedString
public static java.lang.String collectionToDelimitedString(java.util.Collection<?> coll, java.lang.String delim)Convert aCollectioninto a delimitedString(e.g. CSV).Useful for
toString()implementations.- 参数:
coll- theCollectionto convert (potentiallynullor empty)delim- the delimiter to use (typically a ",")- 返回:
- the delimited
String
-
collectionToDelimitedString
public static java.lang.String collectionToDelimitedString(java.util.Collection<?> coll, java.lang.String delim, java.lang.String prefix, java.lang.String suffix)Convert aCollectionto a delimitedString(e.g. CSV).Useful for
toString()implementations.- 参数:
coll- theCollectionto convert (potentiallynullor empty)delim- the delimiter to use (typically a ",")prefix- theStringto start each element withsuffix- theStringto end each element with- 返回:
- the delimited
String
-
hasLength
public static boolean hasLength(java.lang.String str)
Check that the givenStringis neithernullnor of length 0.Note: this method returns
truefor aStringthat purely consists of whitespace.- 参数:
str- theStringto check (may benull)- 返回:
trueif theStringis notnulland has length- 另请参阅:
hasText(String)
-
delimitedListToStringArray
public static java.lang.String[] delimitedListToStringArray(java.lang.String str, java.lang.String delimiter)Take aStringthat is a delimited list and convert it into aStringarray.A single
delimitermay 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 totokenizeToStringArray(java.lang.String, java.lang.String, boolean, boolean).- 参数:
str- the inputString(potentiallynullor empty)delimiter- the delimiter between elements (this is a single delimiter, rather than a bunch individual delimiter characters)- 返回:
- an array of the tokens in the list
- 另请参阅:
tokenizeToStringArray(java.lang.String, java.lang.String, boolean, boolean)
-
delimitedListToStringArray
public static java.lang.String[] delimitedListToStringArray(java.lang.String str, java.lang.String delimiter, java.lang.String charsToDelete)Take aStringthat is a delimited list and convert it into aStringarray.A single
delimitermay 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 totokenizeToStringArray(java.lang.String, java.lang.String, boolean, boolean).- 参数:
str- the inputString(potentiallynullor 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 aString- 返回:
- an array of the tokens in the list
- 另请参阅:
tokenizeToStringArray(java.lang.String, java.lang.String, boolean, boolean)
-
deleteAny
public static java.lang.String deleteAny(java.lang.String inString, java.lang.String charsToDelete)Delete any character in a givenString.- 参数:
inString- the originalStringcharsToDelete- a set of characters to delete. E.g. "az\n" will delete 'a's, 'z's and new lines.- 返回:
- the resulting
String
-
replace
public static java.lang.String replace(java.lang.String inString, java.lang.String oldPattern, java.lang.String newPattern)Replace all occurrences of a substring within a string with another string.- 参数:
inString-Stringto examineoldPattern-Stringto replacenewPattern-Stringto insert- 返回:
- a
Stringwith the replacements
-
applyRelativePath
public static java.lang.String applyRelativePath(java.lang.String path, java.lang.String relativePath)Apply the given relative path to the given Java resource path, assuming standard Java folder separation (i.e. "/" separators).- 参数:
path- the path to start from (usually a full file path)relativePath- the relative path to apply (relative to the full file path above)- 返回:
- the full file path that results from applying the relative path
-
getFilename
public static java.lang.String getFilename(java.lang.String path)
Extract the filename from the given Java resource path, e.g."mypath/myfile.txt" → "myfile.txt".- 参数:
path- the file path (may benull)- 返回:
- the extracted filename, or
nullif none
-
capitalize
public static java.lang.String capitalize(java.lang.String str)
Capitalize aString, changing the first letter to upper case as perCharacter.toUpperCase(char). No other letters are changed.- 参数:
str- theStringto capitalize- 返回:
- the capitalized
String
-
changeFirstCharacterCase
private static java.lang.String changeFirstCharacterCase(java.lang.String str, boolean capitalize)
-
-