StringUtils工具类所有方法详解!
StringUtils 是 Apache Commons Lang 中提供的一个字符串处理工具类,其中包含了丰富的字符串处理方法。下面详细介绍 StringUtils 类中的所有方法:
-
isEmpty(CharSequence str) 判断字符序列 str 是否为空,如果为 null 或长度为 0 则返回 true。
-
isNotEmpty(CharSequence str) 与 isEmpty 方法功能相反,当字符序列不为空时返回 true。
-
isAnyEmpty(CharSequence... css) 判断多个字符序列是否都为空,如果有一个为空则返回 true。
-
isNoneEmpty(CharSequence... css) 与 isAnyEmpty 方法功能相反,当所有字符序列都不为空时返回 true。
-
isBlank(CharSequence str) 判断字符序列 str 是否为空或只包含空格符,如果为 null、长度为 0 或只包含空格符则返回 true。
-
isNotBlank(CharSequence str) 与 isBlank 方法功能相反,当字符序列不为空且不是只包含空格符时返回 true。
-
trim(CharSequence str) 去除字符序列 str 开头和结尾的空格符。
-
trimToNull(CharSequence str) 将 trim(str) 后的结果若为空字符串,则返回 null,否则返回去掉空格符的字符串。
-
trimToEmpty(CharSequence str) 将 trim(str) 后的结果若为空字符串,则返回空字符串,否则返回去掉空格符的字符串。
-
equals(CharSequence cs1, CharSequence cs2) 比较两个字符序列 cs1 和 cs2 是否相等,如果都为 null 则返回 true。
-
equalsIgnoreCase(CharSequence str1, CharSequence str2) 比较两个字符序列 str1 和 str2 是否相等,忽略大小写,如果都为 null 则返回 true。
-
indexOf(CharSequence seq, int searchChar) 查找字符序列 seq 中搜索字符 searchChar 第一次出现的位置,如果未找到则返回 -1。
-
indexOf(CharSequence seq, CharSequence searchSeq) 查找字符序列 seq 中子串 searchSeq 第一次出现的位置,如果未找到则返回 -1。
-
lastIndexOf(CharSequence seq, int searchChar) 查找字符序列 seq 中搜索字符 searchChar 最后一次出现的位置,如果未找到则返回 -1。
-
lastIndexOf(CharSequence seq, CharSequence searchSeq) 查找字符序列 seq 中子串 searchSeq 最后一次出现的位置,如果未找到则返回 -1。
-
contains(CharSequence seq, CharSequence searchSeq) 判断字符序列 seq 是否包含子串 searchSeq。
-
containsIgnoreCase(CharSequence str1, CharSequence str2) 判断字符序列 str1 是否包含字符串 str2,忽略大小写。
-
indexOfAny(CharSequence cs, char... searchChars) 在字符序列 cs 中查找字符数组 searchChars 中任意一个字符第一次出现的位置,如果未找到则返回 -1。
-
indexOfAny(CharSequence cs, String searchChars) 与 indexOfAny(CharSequence cs, char... searchChars) 功能相同,只不过搜索字符变成了字符串。
-
containsAny(CharSequence cs, char... searchChars) 判断字符序列 cs 中是否包含字符数组 searchChars 中的任意一个字符。
-
containsAny(CharSequence cs, CharSequence searchChars) 与 containsAny(CharSequence cs, char... searchChars) 功能相同,只不过搜索字符变成了字符序列。
-
containsAnyIgnoreCase(CharSequence cs, CharSequence... searchCharSequences) 判断字符序列 cs 中是否包含字符序列数组 searchCharSequences 中的任意一个字符串,忽略大小写。
-
containsNone(CharSequence cs, char... searchChars) 判断字符序列 cs 中是否不包含字符数组 searchChars 中的任何一个字符。
-
containsNone(CharSequence cs, String invalidChars) 与 containsNone(CharSequence cs, char... searchChars) 功能相同,只不过搜索字符变成了字符串。
-
indexOfAnyBut(CharSequence str, char... searchChars) 查找字符序列 str 中除了字符数组 searchChars 中的字符之外,第一次出现的位置,如果未找到则返回 -1。
-
indexOfIgnoreCase(CharSequence str, CharSequence searchStr) 查找字符序列 str 中字符串 searchStr 第一次出现的位置,忽略大小写,如果未找到则返回 -1。
-
lastIndexOfIgnoreCase(CharSequence str, CharSequence searchStr) 查找字符序列 str 中字符串 searchStr 最后一次出现的位置,忽略大小写,如果未找到则返回 -1。
-
substring(CharSequence str, int start) 截取字符序列 str 从 start 开始到末尾的子串。
-
substring(CharSequence str, int start, int end) 截取字符序列 str 从 start 开始到 end 结束的子串。
-
left(CharSequence str, int len) 从字符序列 str 中左边开始截取 len 个字符,如果 str 长度小于 len 则返回整个字符序列。
-
right(CharSequence str, int len) 从字符序列 str 中右边开始截取 len 个字符,如果 str 长度小于 len 则返回整个字符序列。
-
mid(CharSequence str, int pos, int len) 从字符序列 str 中第 pos 个字符开始截取 len 个字符。
-
substringBefore(CharSequence str, CharSequence separator) 获取字符序列 str 中分隔符 separator 第一次出现之前的子串,如果未找到分隔符则返回整个字符串。
-
substringAfter(CharSequence str, CharSequence separator) 获取字符序列 str 中分隔符 separator 第一次出现之后的子串,如果未找到分隔符则返回空字符串。
-
substringBeforeLast(CharSequence str, CharSequence separator) 与 substringBefore(CharSequence str, CharSequence separator) 功能相同,只不过查找最后一次出现的分隔符。
-
substringAfterLast(CharSequence str, CharSequence separator) 与 substringAfter(CharSequence str, CharSequence separator) 功能相同,只不过查找最后一次出现的分隔符。
-
substringBetween(CharSequence str, CharSequence tag) 获取字符序列 str 中两个 tag 之间的子串,如果没有找到则返回 null。
-
substringBetween(CharSequence str, CharSequence open, CharSequence close) 获取字符序列 str 中 open 和 close 之间的子串,如果没有找到则返回 null。
-
getNestedString(CharSequence str, CharSequence tag) 与 substringBetween(CharSequence str, CharSequence tag) 功能相同,只不过将 tag 替换成了匹配前缀和后缀。
-
countMatches(CharSequence str, CharSequence sub) 计算在字符序列 str 中匹配子串 sub 的个数。
-
replaceOnce(CharSequence text, CharSequence search, CharSequence replacement) 在字符序列 text 中替换第一次出现的子串 search 为字符串 replacement。
-
replace(CharSequence text, CharSequence search, CharSequence replacement) 在字符序列 text 中替换所有匹配到的子串 search 为字符串 replacement。
-
replaceChars(CharSequence str, char searchChar, char replaceChar) 将字符序列 str 中所有匹配到的 searchChar 替换成 replaceChar。
-
overlay(CharSequence str, CharSequence overlay, int start, int end) 用字符序列 overlay 从 start 到 end 覆盖字符序列 str。
-
leftPad(CharSequence str, int size, char padChar) 使用字符 padChar 在字符序列 str 左边填充至指定长度 size。
-
rightPad(CharSequence str, int size, char padChar) 使用字符 padChar 在字符序列 str 右边填充至指定长度 size。
-
center(CharSequence str, int size, char padChar) 在字符序列 str 两端填充字符 padChar,使其长度为 size。
-
repeat(CharSequence str, int repeat) 将字符序列 str 重复 repeat 次。
-
reverse(CharSequence str) 反转字符序列 str。
-
abbreviate(CharSequence str, int maxWidth) 缩略字符序列 str,使其长度不超过 maxWidth。
-
wrap(CharSequence str, int wrapLength) 将字符序列 str 按照 wrapLength 长度进行换行。
-
wrap(CharSequence str, String wrapMarker, int wrapLength) 将字符序列 str 以 wrapMarker 为标记,按照 wrapLength 长度进行换行。
总结:StringUtils 类提供了丰富的字符串处理方法,可以方便地对字符串进行操作和处理。其中,常用方法包括:isEmpty、isBlank、trim、equals、contains、indexOf、substring、replace 等等。