StringUtil方法全集

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了StringUtil方法全集相关的知识,希望对你有一定的参考价值。

参考技术A org.apache.commons.lang.StringUtils中方法的操作对象是java.lang.String类型的对象,是JDK提供的String类型操作方法的补充。

import org.apache.commons.lang.StringUtils;

<dependency>

<groupId>commons-lang</groupId>

<artifactId>commons-lang</artifactId>

<version>2.6</version>

</dependency>

判断某字符串是否为空,为空的标准是str == null 或 str.length() == 0

下面是示例:

StringUtils.isEmpty(null)= true

StringUtils.isEmpty("")= true

StringUtils.isEmpty(" ")= false

StringUtils.isEmpty("        ")     = false

StringUtils.isEmpty("bob")       = false

去掉字符串两端的控制符(control characters, char <= 32)

如果输入为null则返回null

去掉字符串两端的空白符(whitespace),

如果输入为null则返回null

去掉str两端的在stripChars中的字符。

如果str为null或等于"",则返回它本身;

如果stripChars为null或"",则返回strip(String str)。

比较两个字符串是否相等,如果两个均为空则也认为相等。

返回字符searchChar在字符串str中第一次出现的位置。

如果searchChar没有在str中出现则返回-1,

如果str为null或"",则也返回-1

返回字符串searchStr从startPos开始在字符串str中第一次出现的位置。

举例(*代表任意字符串):

StringUtils.indexOf(null, *, *)= -1

StringUtils.indexOf(*, null, *)= -1

StringUtils.indexOf("", "", 0)= 0

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

判断字符串str是否包含字符串searchStr。

如果str为null或searchStr为null,返回false;

如果str为"",并且searchStr为"",返回true

举例:

StringUtils.contains("", "")= true

StringUtils.contains("dfg", "")= true

StringUtils.contains("dfg", "d")= true

StringUtils.contains("dfg", "gz") = false

得到字符串str的子串。

如果start小于0,位置是从后往前数的第|start|个

如果str为null或"",则返回它本身

举例(*表示任意):

StringUtils.substring(null, *)= null

StringUtils.substring("", *)= ""

StringUtils.substring("asdf", 0)) = "asdf"

StringUtils.substring("asdf", 1)) = "sdf"

StringUtils.substring("asdf", 3)) = "f"

StringUtils.substring("asdf",) = ""

StringUtils.substring("asdf", -1)) = "f"

StringUtils.substring("asdf", -3)) = "sdf"

StringUtils.substring("asdf", -8)) = "asdf"

得到字符串str的子串。

如果start小于0,位置是从后往前数的第|start|个,

如果end小于0,位置是从后往前数的第|end|个,

如果str为null或"",则返回它本身

把字符串拆分成一个字符串数组,用空白符(whitespace)作为分隔符。

Whitespace是这样定义的 @link Character#isWhitespace(char)

如果字符串为null,返回null

如果字符串为"",返回空数组

举例(*表示任意):

StringUtils.split(null)= null

StringUtils.split("")=

StringUtils.split("as dfyy"))= "as","df","yy"

StringUtils.split(" as dfyy "))= "as","df","yy"

StringUtils.split("as\ndf\ryy"))= "as","df","yy"

StringUtils.split("as\tdf\fyy"))= "as","df","yy"

StringUtils.split("asdf \fyy"))= "as","df","yy"

StringUtils.split("as\t \r df \f \n yy")) = "as","df","yy"

StringUtils.split("as"))= "as"

StringUtils.split(" as "))= "as"

把字符串拆分成一个字符串数组,用指定的字符separatorChar作为分隔符。

如果字符串为null,返回null

如果字符串为"",返回空数组

举例(*表示任意):

StringUtils.split(null, *)= null

StringUtils.split("", *)=

StringUtils.split("as df yy",' '))= "as","df","yy"

StringUtils.split(" as df yy ",' ')) = "as","df","yy"

StringUtils.split("asodfoyy",'o'))= "as","df","yy"

StringUtils.split("as.df.yy",'.'))= "as","df","yy"

StringUtils.split("as\ndf\nyy",'\n'))= "as","df","yy"

StringUtils.split("as",' '))= "as"

StringUtils.split(" as ",' '))= "as"

把数组中的元素连接成一个字符串返回,把分隔符separator也加上。

举例(*表示任意):

StringUtils.join(null, *)= null

StringUtils.join(, *)= ""

StringUtils.join(null, *)= ""

StringUtils.join("as","df","gh","jk",' '))= "as df gh jk"

StringUtils.join("as","df","gh","jk",'.'))= "as.df.gh.jk"

StringUtils.join("as","","df","gh",'.'))= "as..df.gh"

StringUtils.join("","as","","","df","","",','))= ",as,,,df,,"

StringUtils.join("","as","","","df","","",' '))= " asdf "

StringUtils.join("as.df.gh",'.'))= "as.df.gh"

StringUtils.join("as.df.gh",' '))= "as.df.gh"

用replaceChars代替str中的searchChars。

replaceChars的长度应该和searchChars的长度相等,

如果replaceChars的长度大于searchChars的长度,超过长度的字符将被忽略,

如果replaceChars的长度小于searchChars的长度,超过长度的字符将被删除。

举例(*表示任意):

StringUtils.replaceChars(null, *, *)= null

StringUtils.replaceChars("", *, *)= ""

StringUtils.replaceChars("asdf", null, *)= "asdf"

StringUtils.replaceChars("asdf", "", *)= "asdf"

StringUtils.replaceChars("asdf","s",null))= "adf"

StringUtils.replaceChars("asdf","s",""))= "adf"

StringUtils.replaceChars("asdsfsg","s","y"))= "aydyfyg"

StringUtils.replaceChars("asdf","sd","yy"))="ayyf"

StringUtils.replaceChars("asdf","sd","yyy"))="ayyf"

StringUtils.replaceChars("asssdf","s","yyy"))="ayyydf"

StringUtils.replaceChars("asdf","sd","y"))= "ayf"

StringUtils.replaceChars("assssddddf","sd","y"))= "ayyyyf"

重复字符串repeat次,组合成一个新串返回。

如果字符串str为null或"",则返回它本身

如果repeat小于0,则返回""

举例(*表示任意):

StringUtils.repeat(null, *) = null

StringUtils.repeat("", *)= ""

StringUtils.repeat("a", 3) = "aaa"

StringUtils.repeat("ab", 2) = "abab"

StringUtils.repeat("a", -2) = ""

把字符串中的字符大写转换为小写,小写转换为大写。

举例:

StringUtils.swapCase(null)= null

StringUtils.swapCase("")= ""

StringUtils.swapCase("Hello Boys")) = "hELLO bOYS"

StringUtils.swapCase("I am 11"))="i AM 11"

计算字符串sub在字符串str中出现的次数。

如果str为null或"",则返回0

举例(*表示任意):

StringUtils.countMatches(null, *)= 0

StringUtils.countMatches("", *)= 0

StringUtils.countMatches("asdf","as"))= 1

StringUtils.countMatches("asdfas","as")) = 2

StringUtils.countMatches("dfgh","as"))= 0

StringUtils.countMatches("as",""))= 0

StringUtils.countMatches("as",null))= 0

以上是关于StringUtil方法全集的主要内容,如果未能解决你的问题,请参考以下文章

stringutil和stringutils的区别是啥?

StringUtil startWith

StringUtil startWith

Android smack.util.StringUtil 没有 parseBareAddress

StringUtil工具类

StringUtil字符串工具类