org.apache.commons.lang.StringUtils
下的StringUtils的常用方法。
导入依赖
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
</dependency>
常用方法
1.StringUtils.isEmpty()
判断字符串是否为空. " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 isEmpty(" ")=false。下面举例说明一下。
StringUtils.isEmpty(null) = true
StringUtils.isEmpty(“”) = true
StringUtils.isEmpty(” “) = false
StringUtils.isEmpty(” “) = false
StringUtils.isEmpty(“aa”) = false
StringUtils.isEmpty(” aa “) = false
2.StringUtils.isNotEmpty()
判断字符串不为空 , = !isEmpty(),不过多赘述。
3.StringUtils.isAnyEmpty()
这个不常用,判断多个字符串,如果有一个为空 即返回true。
eg:
StringUtils.isAnyEmpty(null) = true
StringUtils.isAnyEmpty(null, “aa”) = true
StringUtils.isAnyEmpty("", “aaa”) = true
StringUtils.isAnyEmpty(“aaa”, “”) = true
StringUtils.isAnyEmpty(" aaa ", null) = true
StringUtils.isAnyEmpty(" ", “aaa”) = false
StringUtils.isAnyEmpty(“aaa”, “aaa”) = false
4.StringUtils.isNoneEmpty()
相当于 !isAnyEmpty(aaa),当所有的字符串都不为空的时候,返回true。
StringUtils.isNoneEmpty(null) = false
StringUtils.isNoneEmpty(null, "foo") = false
StringUtils.isNoneEmpty("", "bar") = false
StringUtils.isNoneEmpty("bob", "") = false
StringUtils.isNoneEmpty(" bob ", null) = false
StringUtils.isNoneEmpty(" ", "bar") = true
StringUtils.isNoneEmpty("foo", "bar") = true
5.StringUtils.isBlank()
判断字符串是否为空,空格,空串,null 都会返回true。
StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank(“bob”) = false
StringUtils.isBlank(" bob ") = false
6.StringUtils.isNotBlank()
相当于 =!isBlank(); 不过多赘述。
7.StringUtils.isAnyBlank()
判断多个字符串中是否包含任何真空值(包含空格或空值)。比StringUtils.isAnyEmpty() 多判断一个空格的问题。
StringUtils.isAnyBlank(null) = true
StringUtils.isAnyBlank(null, “foo”) = true
StringUtils.isAnyBlank(null, null) = true
StringUtils.isAnyBlank("", “bar”) = true
StringUtils.isAnyBlank(“bob”, “”) = true
StringUtils.isAnyBlank(" bob ", null) = true
StringUtils.isAnyBlank(" ", “bar”) = true
StringUtils.isAnyBlank(“foo”, “bar”) = false
8.StringUtils.isNoneBlank()
是否全部都不包含空值或空格
StringUtils.isNoneBlank(null) = false
StringUtils.isNoneBlank(null, “foo”) = false
StringUtils.isNoneBlank(null, null) = false
StringUtils.isNoneBlank("", “bar”) = false
StringUtils.isNoneBlank(“bob”, “”) = false
StringUtils.isNoneBlank(" bob ", null) = false
StringUtils.isNoneBlank(" ", “bar”) = false
StringUtils.isNoneBlank(“foo”, “bar”) = true
9.StringUtils.trim()
去掉字符串两端的控制符(control characters, char <= 32)
如果输入为null则返回null
StringUtils.trim(null) = null
StringUtils.trim(“”) = “”
StringUtils.trim(” “) = “”
StringUtils.trim(” \b \t \n \f \r “) = “”
StringUtils.trim(” \n\tss \b”) = “ss”
StringUtils.trim(” d d dd “) = “d d dd”
StringUtils.trim(“dd “) = “dd”
StringUtils.trim(” dd “) = “dd”
10.StringUtils.trimToNull()
去掉字符串两端的控制符(control characters, char <= 32)
如果变为null或”“,则都返回null
StringUtils.trimToNull(null) = null
StringUtils.trimToNull(“”) = null
StringUtils.trimToNull(” “) = null
StringUtils.trimToNull(” \b \t \n \f \r “) = null
StringUtils.trimToNull(” \n\tss \b”) = “ss”
StringUtils.trimToNull(” d d dd “) = “d d dd”
StringUtils.trimToNull(“dd “) = “dd”
StringUtils.trimToNull(” dd “) = “dd”
11.StringUtils.trimToEmpty()
去掉字符串两端的控制符(control characters, char <= 32)
如果变为null或”“,则都返回””
StringUtils.trimToEmpty(null) = “”
StringUtils.trimToEmpty(“”) = “”
StringUtils.trimToEmpty(” “) = “”
StringUtils.trimToEmpty(” \b \t \n \f \r “) = “”
StringUtils.trimToEmpty(” \n\tss \b”) = “ss”
StringUtils.trimToEmpty(” d d dd “) = “d d dd”
StringUtils.trimToEmpty(“dd “) = “dd”
StringUtils.trimToEmpty(” dd “) = “dd”
12.StringUtils.strip()
去掉字符串两端的空白符(whitespace),
如果输入为null则返回null。
(注意和trim()的区别)
StringUtils.strip(null) = null
StringUtils.strip(“”) = “”
StringUtils.strip(” “) = “”
StringUtils.strip(” \b \t \n \f \r “) = “\b”
StringUtils.strip(” \n\tss \b”) = “ss \b”
StringUtils.strip(” d d dd “) = “d d dd”
StringUtils.strip(“dd “) = “dd”
StringUtils.strip(” dd “) = “dd”
13.StringUtils.stripToNull()
去掉字符串两端的空白符(whitespace),
如果变为null或”“,则返回null。
(注意和trimToNull()的区别)
StringUtils.stripToNull(null) = null
StringUtils.stripToNull(“”) = null
StringUtils.stripToNull(” “) = null
StringUtils.stripToNull(” \b \t \n \f \r “) = “\b”
StringUtils.stripToNull(” \n\tss \b”) = “ss \b”
StringUtils.stripToNull(” d d dd “) = “d d dd”
StringUtils.stripToNull(“dd “) = “dd”
StringUtils.stripToNull(” dd “) = “dd”
14.StringUtils.stripToNull()
去掉字符串两端的空白符(whitespace),
如果变为null或”“,则返回””。
(注意和trimToEmpty()的区别)
StringUtils.stripToNull(null) = “”
StringUtils.stripToNull(“”) = “”
StringUtils.stripToNull(” “) = “”
StringUtils.stripToNull(” \b \t \n \f \r “) = “\b”
StringUtils.stripToNull(” \n\tss \b”) = “ss \b”
StringUtils.stripToNull(” d d dd “) = “d d dd”
StringUtils.stripToNull(“dd “) = “dd”
StringUtils.stripToNull(” dd “) = “dd”
15.StringUtils.strip(String str, String stripChars)
去掉str两端的在stripChars中的字符。
如果str为null或等于”“,则返回它本身;
如果stripChars为null或”“,则返回strip(String str)。
StringUtils.stripStart(null, *)= null
StringUtils.stripStart("", *)= ""
StringUtils.stripStart("abc", "")= "abc"
StringUtils.stripStart("abc", null)= "abc"
StringUtils.stripStart(" abc", null)= "abc"
StringUtils.stripStart("abc ", null)= "abc "
StringUtils.stripStart(" abc ", null)= "abc "
StringUtils.stripStart("yxabc ", "xyz") = "abc "
16.StringUtils.stripStart(String str, String stripChars)
去掉str前端的在stripChars中的字符。(去首不去尾)
StringUtils.stripStart(null, *) = null
StringUtils.stripStart("", *) = ""
StringUtils.stripStart("abc", "") = "abc"
StringUtils.stripStart("abc", null) = "abc"
StringUtils.stripStart(" abc", null) = "abc"
StringUtils.stripStart("abc ", null) = "abc "
StringUtils.stripStart(" abc ", null) = "abc "
StringUtils.stripStart("yxabc ", "xyz") = "abc "
17.StringUtils.stripEnd(String str, String stripChars)
去掉str末端的在stripChars中的字符。(去尾不去首)
StringUtils.stripEnd(null, *) = null
StringUtils.stripEnd("", *) = ""
StringUtils.stripEnd("abc", "") = "abc"
StringUtils.stripEnd("abc", null) = "abc"
StringUtils.stripEnd(" abc", null) = " abc"
StringUtils.stripEnd("abc ", null) = "abc"
StringUtils.stripEnd(" abc ", null) = " abc"
StringUtils.stripEnd(" abcyx", "xyz") = " abc"
StringUtils.stripEnd("120.00", ".0") = "12"
18.StringUtils.stripAll(String[] strs)
对字符串数组中的每个字符串进行strip(String str),然后返回。
如果strs为null或strs长度为0,则返回strs本身
StringUtils.stripAll(null) = null
StringUtils.stripAll([])= []
StringUtils.stripAll(["abc", " abc"]) = ["abc", "abc"]
StringUtils.stripAll(["abc ", null]) = ["abc", null]
19. StringUtils.stripAll(String[] strs, String stripChars)
对字符串数组中的每个字符串进行strip(String str, String stripChars),然后返回。
如果strs为null或strs长度为0,则返回strs本身
StringUtils.stripAll(null, *) = null
StringUtils.stripAll([], *) = []
StringUtils.stripAll(["abc", " abc"], null) = ["abc", "abc"]
StringUtils.stripAll(["abc ", null], null) = ["abc", null]
StringUtils.stripAll(["abc ", null], "yz") = ["abc ", null]
StringUtils.stripAll(["yabcz", null], "yz") = ["abc", null]
20.StringUtils.equals(String str1, String str2)
比较两个字符串是否相等,如果两个均为空则也认为相等。
StringUtils.equals(null, null) = true
StringUtils.equals(null, "abc") = false
StringUtils.equals("abc", null) = false
StringUtils.equals("abc", "abc") = true
StringUtils.equals("abc", "ABC") = false
21.StringUtils.equalsIgnoreCase(String str1, String str2)
比较两个字符串是否相等,不区分大小写,如果两个均为空则也认为相等。
StringUtils.equalsIgnoreCase(null, null) = true
StringUtils.equalsIgnoreCase(null, "abc") = false
StringUtils.equalsIgnoreCase("abc", null) = false
StringUtils.equalsIgnoreCase("abc", "abc") = true
StringUtils.equalsIgnoreCase("abc", "ABC") = true
22.StringUtils.indexOf(String str, char searchChar)
返回字符searchChar在字符串str中第一次出现的位置。
如果searchChar没有在str中出现则返回-1,
如果str为null或”“,则也返回-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
23.StringUtils.indexOf(String str, char searchChar, int startPos)
返回字符searchChar从startPos开始在字符串str中第一次出现的位置。
如果从startPos开始searchChar没有在str中出现则返回-1,
如果str为null或”“,则也返回-1
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
24.StringUtils.indexOf(String str, String searchStr)
返回字符串searchStr在字符串str中第一次出现的位置。
如果str为null或searchStr为null则返回-1,
如果searchStr为”“,且str为不为null,则返回0,
如果searchStr不在str中,则返回-1
StringUtils.indexOf(null, *) = -1
StringUtils.indexOf("", *) = -1
StringUtils.indexOf("aabaabaa", 'a') = 0
StringUtils.indexOf("aabaabaa", 'b') = 2
25.StringUtils.ordinalIndexOf(String str, String searchStr, int ordinal)
返回字符串searchStr在字符串str中第ordinal次出现的位置。
如果str=null或searchStr=null或ordinal<=0则返回-1
StringUtils.lastOrdinalIndexOf(null, *, *) = -1
StringUtils.lastOrdinalIndexOf(*, null, *) = -1
StringUtils.lastOrdinalIndexOf("", "", *) = 0
StringUtils.lastOrdinalIndexOf("aabaabaa", "a", 1) = 7
StringUtils.lastOrdinalIndexOf("aabaabaa", "a", 2) = 6
StringUtils.lastOrdinalIndexOf("aabaabaa", "b", 1) = 5
StringUtils.lastOrdinalIndexOf("aabaabaa", "b", 2) = 2
StringUtils.lastOrdinalIndexOf("aabaabaa", "ab", 1) = 4
StringUtils.lastOrdinalIndexOf("aabaabaa", "ab", 2) = 1
StringUtils.lastOrdinalIndexOf("aabaabaa", "", 1) = 8
StringUtils.lastOrdinalIndexOf("aabaabaa", "", 2) = 8
26. StringUtils.indexOf(String str, String searchStr, int startPos)
返回字符串searchStr从startPos开始在字符串str中第一次出现的位置。
StringUtils.lastOrdinalIndexOf(null, *, *) = -1
StringUtils.lastOrdinalIndexOf(*, null, *) = -1
StringUtils.lastOrdinalIndexOf("", "", *) = 0
StringUtils.lastOrdinalIndexOf("aabaabaa", "a", 1) = 7
StringUtils.lastOrdinalIndexOf("aabaabaa", "a", 2) = 6
StringUtils.lastOrdinalIndexOf("aabaabaa", "b", 1) = 5
StringUtils.lastOrdinalIndexOf("aabaabaa", "b", 2) = 2
StringUtils.lastOrdinalIndexOf("aabaabaa", "ab", 1) = 4
StringUtils.lastOrdinalIndexOf("aabaabaa", "ab", 2) = 1
StringUtils.lastOrdinalIndexOf("aabaabaa", "", 1) = 8
StringUtils.lastOrdinalIndexOf("aabaabaa", "", 2) = 8