1. 程式人生 > >StringUtils 工具類的常用方法

StringUtils 工具類的常用方法

StringUtils 原始碼,使用的是commons-lang3-3.1包。

下載地址 http://commons.apache.org/lang/download_lang.cgi


以下是StringUtils的各項用法
1.空字串檢查
使用函式: StringUtils.isBlank(testString)
函式介紹: 當testString為空,長度為零或者僅由空白字元(whitespace)組成時,返回True;否則返回False
例程:
    String test = "";
    String test2 = "\n\n\t";
    String test3 = null;
    String test4 = "Test";

    System.out.println( "test blank? " + StringUtils.isBlank( test ) );
    System.out.println( "test2 blank? " + StringUtils.isBlank( test2 ) );
    System.out.println( "test3 blank? " + StringUtils.isBlank( test3 ) );
    System.out.println( "test4 blank? " + StringUtils.isBlank( test4 ) );
輸出如下:
test blank? true
test2 blank? true
test3 blank? true
test4 blank? False
函式StringUtils.isNotBlank(testString)的功能與StringUtils.isBlank(testString)相反.


2.清除空白字元
使用函式: StringUtils.trimToNull(testString)
函式介紹:清除掉testString首尾的空白字元,如果僅testString全由空白字元
(whitespace)組成則返回null
例程:
    String test1 = "\t";
    String test2 = "  A  Test  ";
    String test3 = null;

    System.out.println( "test1 trimToNull: " + StringUtils.trimToNull( test1 ) );
    System.out.println( "test2 trimToNull: " + StringUtils.trimToNull( test2 ) );
    System.out.println( "test3 trimToNull: " + StringUtils.trimToNull( test3 ) );

輸出如下:
test1 trimToNull: null
test2 trimToNull: A  Test
test3 trimToNull: null

注意:函式StringUtils.trim(testString)與
StringUtils.trimToNull(testString)功能類似,但testString由空白字元
(whitespace)組成時返回零長度字串。


3.取得字串的縮寫
使用函式: StringUtils.abbreviate(testString,width)和StringUtils.abbreviate(testString,offset,width)
函式介紹:在給定的width內取得testString的縮寫,當testString的長度小於width則返回原字串.
例程:
    String test = "This is a test of the abbreviation.";
    String test2 = "Test";

    System.out.println( StringUtils.abbreviate( test, 15 ) );
    System.out.println( StringUtils.abbreviate( test, 5,15 ) );
    System.out.println( StringUtils.abbreviate( test2, 10 ) );
輸出如下:
This is a te...
...is a test...
Test

4.劈分字串
使用函式: StringUtils.split(testString,splitChars,arrayLength)
函式介紹:splitChars中可以包含一系列的字串來劈分testString,並可以設定得
到陣列的長度.注意設定長度arrayLength和劈分字串間有抵觸關係,建議一般情況下
不要設定長度.
例程:
    String input = "A b,c.d|e";
    String input2 = "Pharmacy, basketball funky";

    String[] array1 = StringUtils.split( input, " ,.|");
    String[] array2 = StringUtils.split( input2, " ,", 2 );


    System.out.println( ArrayUtils.toString( array1 ) );
    System.out.println( ArrayUtils.toString( array2 ) );
輸出如下:
{A,b,c,d,e}
{Pharmacy,basketball funky}

5.查詢巢狀字串
使用函式:StringUtils.substringBetween(testString,header,tail)
函式介紹:在testString中取得header和tail之間的字串。不存在則返回空
例程:
    String htmlContent = "ABC1234ABC4567";
    System.out.println(StringUtils.substringBetween(htmlContent, "1234", "4567"));
    System.out.println(StringUtils.substringBetween(htmlContent, "12345", "4567"));
輸出如下:
    ABC
    null


6.去除尾部換行符
使用函式:StringUtils.chomp(testString)
函式介紹:去除testString尾部的換行符
例程:
    String input = "Hello\n";
    System.out.println( StringUtils.chomp( input ));
    String input2 = "Another test\r\n";
    System.out.println( StringUtils.chomp( input2 ));
輸出如下:
    Hello
    Another test


7.重複字串
使用函式:StringUtils.repeat(repeatString,count)
函式介紹:得到將repeatString重複count次後的字串
例程:
    System.out.println( StringUtils.repeat( "*", 10));
    System.out.println( StringUtils.repeat( "China ", 5));
輸出如下:
    **********
    China China China China China

其他函式:StringUtils.center( testString, count,repeatString );
函式介紹:把testString插入將repeatString重複多次後的字串中間,得到字串
的總長為count
例程:
    System.out.println( StringUtils.center( "China", 11,"*"));
輸出如下:
    ***China***


8.顛倒字串
使用函式:StringUtils.reverse(testString)
函式介紹:得到testString中字元顛倒後的字串
例程:
    System.out.println( StringUtils.reverse("ABCDE"));
輸出如下:
    EDCBA

9.判斷字串內容的型別
函式介紹:
StringUtils.isNumeric( testString ) :如果testString全由數字組成返回True
StringUtils.isAlpha( testString ) :如果testString全由字母組成返回True
StringUtils.isAlphanumeric( testString ) :如果testString全由數字或數字組
成返回True
StringUtils.isAlphaspace( testString )  :如果testString全由字母或空格組
成返回True

例程:
    String state = "Virginia";
    System.out.println( "Is state number? " + StringUtils.isNumeric(
state ) );
    System.out.println( "Is state alpha? " + StringUtils.isAlpha( state )
);
    System.out.println( "Is state alphanumeric? " +StringUtils.isAlphanumeric( state ) );
    System.out.println( "Is state alphaspace? " + StringUtils.isAlphaSpace( state ) );
輸出如下:
    Is state number? false
    Is state alpha? true
    Is state alphanumeric? true
    Is state alphaspace? true

10.取得某字串在另一字串中出現的次數
使用函式:StringUtils.countMatches(testString,seqString)
函式介紹:取得seqString在testString中出現的次數,未發現則返回零
例程:
    System.out.println(StringUtils.countMatches( "Chinese People", "e"
));
輸出:
    4

11.部分擷取字串
使用函式:
StringUtils.substringBetween(testString,fromString,toString ):取得兩字元
之間的字串
StringUtils.substringAfter( ):取得指定字串後的字串
StringUtils.substringBefore( ):取得指定字串之前的字串
StringUtils.substringBeforeLast( ):取得最後一個指定字串之前的字串
StringUtils.substringAfterLast( ):取得最後一個指定字串之後的字串

函式介紹:上面應該都講明白了吧。
例程:
    String formatted = " 25 * (30,40) [50,60] | 30";
    System.out.print("N0: " + StringUtils.substringBeforeLast( formatted, "*" ) );
    System.out.print(", N1: " + StringUtils.substringBetween( formatted, "(", "," ) );
    System.out.print(", N2: " + StringUtils.substringBetween( formatted, ",", ")" ) );
    System.out.print(", N3: " + StringUtils.substringBetween( formatted, "[", "," ) );
    System.out.print(", N4: " + StringUtils.substringBetween( formatted, ",", "]" ) );
    System.out.print(", N5: " + StringUtils.substringAfterLast( formatted, "|" ) );
輸出如下:
    N0:  25 , N1: 30, N2: 40, N3: 50, N4: 40) [50,60, N5:  30

1. 檢查字串是否為空:

 static boolean isBlank(CharSequence str)  判斷字串是否為空或null;
 static boolean isNotBlank(CharSequence str) 判斷字串是否非空或非null;

 StringUtils.isBlank("a");
 返回結果為: false;

2. 縮排字串:

 static String abbreviate(String str, int maxWidth) 縮排字串,第二個引數至少為4(包括...)

 StringUtils.abbreviate("abcdefg", 20);
 返回結果為:abcdefg (正常顯示)

 StringUtils.abbreviate("abcdefg", 4);
 返回結果為:a...

3. 首字母大寫:

 static String capitalize(String str) 首字母大寫
 static String uncapitalize(String str)首字母小寫  

 StringUtils.capitalize("abcdefg");
 返回結果:Abcdefg

4. 字串顯示在一個大字串的位置:

 static String center(String str, int size);  預設以空格填充
 static String center(String str, int size, String padString); 其餘位置字串填充
 public static String leftPad(String str,int size); 左側空格填充
 public static String leftPad(String str,int size,String padStr);左側字串填充
 public static String rightPad(String str,int size); 左側空格填充
 public static String rightPad(String str,int size,String padStr);左側字串填充
 

 StringUtils.center("abcdefg", 20);
 返回結果:      abcdefg      

 StringUtils.center("abcdefg", 20,"*_");
 返回結果:*_*_*_abcdefg*_*_*_*

 StringUtils.leftPad("abc", 10, "*");
 返回結果:*******abc

5. 重複字串次數

 static String repeat(String str, int repeat);

 StringUtils.repeat("abc", 5); 
 返回結果:abcabcabcabcabc

6. 是否全是大寫,是否全是小寫(3.0版本)

 public static boolean isAllLowerCase(String str);
 public static boolean isAllUpperCase(String str);

 StringUtils.isAllLowerCase("abC");
 返回結果:false

7. 是否都是由字母組成:

 public static boolean isAlpha(String str);  只由字母組成
 public static boolean isAlphaSpace(String str); 只有字母和空格組成
 public static boolean isAlphanumeric(String str);只由字母和數字組成
 public static boolean isAlphanumericSpace(String str);只由字母數字和空格組成
 public static boolean isNumeric(String str);只由數字組成
 public static boolean isNumericSpace(String str);只由數字和空格組成

 StringUtils.isAlpha("a2bdefg");
 返回結果:false

8. 小字串在大字串中的匹配次數

public static int countMatches(String str,String sub);

StringUtils.countMatches("ababsssababa", "ab");
 返回結果:4

9. 字串倒轉

 public static String reverse(String str);

 StringUtils.reverse("abcdef");
 返回結果:fedcba

10. 大小寫轉換,空格不動
 

 public static String swapCase(String str);

 StringUtils.swapCase("I am a-A*a")
 返回結果:i AM A-a*A

一、陣列轉成字串: 
1、 將陣列中的字元轉換為一個字串 
將陣列中的字元轉換為一個字串 

@param strToConv 要轉換的字串 ,預設以逗號分隔 
@return 返回一個字串 
String[3] s={"a","b","c"} 
StringUtil.convString(s)="a,b,c" 
2、 static public String converString(String strToConv) 
@param strToConv 要轉換的字串 , 
@param conv 分隔符,預設以逗號分隔 
@return 同樣返回一個字串 

String[3] s={"a","b","c"} 
StringUtil.convString(s,"@")="[email protected]@c" 
static public String converString(String strToConv, String conv) 


二、空值檢測: 
3、 

Checks if a String is empty ("") or null. 


判斷一個字串是否為空,空格作非空處理。 StringUtils.isEmpty(null) = true StringUtils.isEmpty("") = true StringUtils.isEmpty(" ") = false StringUtils.isEmpty("bob") = false StringUtils.isEmpty(" bob ") = false 

NOTE: This method changed in Lang version 2.0. 

It no longer trims the String. 
That functionality is available in isBlank(). 


@param str the String to check, may be null 
@return true if the String is empty or null 
public static boolean isEmpty(String str) 


三、非空處理: 
4、 
Checks if a String is not empty ("") and not null. 


判斷一個字串是否非空,空格作非空處理. StringUtils.isNotEmpty(null) = false StringUtils.isNotEmpty("") = false StringUtils.isNotEmpty(" ") = true StringUtils.isNotEmpty("bob") = true StringUtils.isNotEmpty(" bob ") = true 

@param str the String to check, may be null 
@return true if the String is not empty and not null 
public static boolean isNotEmpty(String str) 

5、 

Checks if a String is not empty (""), not null and not whitespace only. 


判斷一個字串是否非空,空格作空處理. StringUtils.isNotBlank(null) = false StringUtils.isNotBlank("") = false StringUtils.isNotBlank(" ") = false StringUtils.isNotBlank("bob") = true StringUtils.isNotBlank(" bob ") = true 

@param str the String to check, may be null 
@return true if the String is 
not empty and not null and not whitespace 
@since 2.0 
public static boolean isNotBlank(String str) 


四、 空格處理 
6、 
Removes control characters (char <= 32) from both 

ends of this String, handling null by returning 
null. 


The String is trimmed using {@link String#trim()}. 

Trim removes start and end characters <= 32. 
To strip whitespace use {@link //strip(String)}. 


To trim your choice of characters, use the 

{@link //strip(String, String)} methods. 


格式化一個字串中的空格,有非空判斷處理; StringUtils.trim(null) = null StringUtils.trim("") = "" StringUtils.trim(" ") = "" StringUtils.trim("abc") = "abc" StringUtils.trim(" abc ") = "abc" 

@param str the String to be trimmed, may be null 
@return the trimmed string, null if null String input 
public static String trim(String str) 

7、 


Removes control characters (char <= 32) from both 

ends of this String returning null if the String is 
empty ("") after the trim or if it is null. 

The String is trimmed using {@link String#trim()}. 

Trim removes start and end characters <= 32. 
To strip whitespace use {@link /stripToNull(String)}. 


格式化一個字串中的空格,有非空判斷處理,如果為空返回null; StringUtils.trimToNull(null) = null StringUtils.trimToNull("") = null StringUtils.trimToNull(" ") = null StringUtils.trimToNull("abc") = "abc" StringUtils.trimToNull(" abc ") = "abc" 

@param str the String to be trimmed, may be null 
@return the trimmed String, 
null if only chars <= 32, empty or null String input 
@since 2.0 
public static String trimToNull(String str) 

8、 


Removes control characters (char <= 32) from both 

ends of this String returning an empty String ("") if the String 
is empty ("") after the trim or if it is null. 

The String is trimmed using {@link String#trim()}. 

Trim removes start and end characters <= 32. 
To strip whitespace use {@link /stripToEmpty(String)}. 


格式化一個字串中的空格,有非空判斷處理,如果為空返回""; StringUtils.trimToEmpty(null) = "" StringUtils.trimToEmpty("") = "" StringUtils.trimToEmpty(" ") = "" StringUtils.trimToEmpty("abc") = "abc" StringUtils.trimToEmpty(" abc ") = "abc" 

@param str the String to be trimmed, may be null 
@return the trimmed String, or an empty String if null input 
@since 2.0 
public static String trimToEmpty(String str) 


五、 字串比較: 
9、 
Compares two Strings, returning true if they are equal. 


nulls are handled without exceptions. Two null 

references are considered to be equal. The comparison is case sensitive. 


判斷兩個字串是否相等,有非空處理。 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 

@param str1 the first String, may be null 
@param str2 the second String, may be null 
@return true if the Strings are equal, case sensitive, or 
both null 
@see java.lang.String#equals(Object) 
public static boolean equals(String str1, String str2) 


10、 

Compares two Strings, returning true if they are equal ignoring 

the case. 


nulls are handled without exceptions. Two null 

references are considered equal. Comparison is case insensitive. 


判斷兩個字串是否相等,有非空處理。忽略大小寫 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 

@param str1 the first String, may be null 
@param str2 the second String, may be null 
@return true if the Strings are equal, case insensitive, or 
both null 
@see java.lang.String#equalsIgnoreCase(String) 
public static boolean equalsIgnoreCase(String str1, String str2) 


六、 IndexOf 處理 
11、 


Finds the first index within a String, handling null. 

This method uses {@link String#indexOf(String)}. 


A null String will return -1. 


返回要查詢的字串所在位置,有非空處理 StringUtils.indexOf(null, *) = -1 StringUtils.indexOf(*, null) = -1 StringUtils.indexOf("", "") = 0 StringUtils.indexOf("aabaabaa", "a") = 0 StringUtils.indexOf("aabaabaa", "b") = 2 StringUtils.indexOf("aabaabaa", "ab") = 1 StringUtils.indexOf("aabaabaa", "") = 0 

@param str the String to check, may be null 
@param searchStr the String to find, may be null 
@return the first index of the search String, 
-1 if no match or null string input 
@since 2.0 
public static int indexOf(String str, String searchStr) 

12、 

Finds the first index within a String, handling null. 

This method uses {@link String#indexOf(String, int)}. 


A null String will return -1. 

A negative start position is treated as zero. 
An empty ("") search String always matches. 
A start position greater than the string length only matches 
an empty search String. 


返回要由指定位置開始查詢的字串所在位置,有非空處理 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 

@param str the String to check, may be null 
@param searchStr the String to find, may be null 
@param startPos the start position, negative treated as zero 
@return the first index of the search String, 
-1 if no match or null string input 
@since 2.0 
public static int indexOf(String str, String searchStr, int startPos) 


七、 子字串處理: 
13、 
Gets a substring from the specified String avoiding exceptions. 


A negative start position can be used to start n 

characters from the end of the String. 


A null String will return null. 

An empty ("") String will return "". 


返回指定位置開始的字串中的所有字元 StringUtils.substring(null, *) = null StringUtils.substring("", *) = "" StringUtils.substring("abc", 0) = "abc" StringUtils.substring("abc", 2) = "c" StringUtils.substring("abc", 4) = "" StringUtils.substring("abc", -2) = "bc" StringUtils.substring("abc", -4) = "abc" 

@param str the String to get the substring from, may be null 
@param start the position to start from, negative means 
count back from the end of the String by this many characters 
@return substring from start position, null if null String input 
public static String substring(String str, int start) 

14、 

Gets a substring from the specified String avoiding exceptions. 


A negative start position can be used to start/end n 

characters from the end of the String. 


The returned substring starts with the character in the start 

position and ends before the end position. All postion counting is 
zero-based -- i.e., to start at the beginning of the string use 
start = 0. Negative start and end positions can be used to 
specify offsets relative to the end of the String. 


If start is not strictly to the left of end, "" 

is returned. 


返回由開始位置到結束位置之間的子字串 StringUtils.substring(null, *, *) = null StringUtils.substring("", * , *) = ""; StringUtils.substring("abc", 0, 2) = "ab" StringUtils.substring("abc", 2, 0) = "" StringUtils.substring("abc", 2, 4) = "c" StringUtils.substring("abc", 4, 6) = "" StringUtils.substring("abc", 2, 2) = "" StringUtils.substring("abc", -2, -1) = "b" StringUtils.substring("abc", -4, 2) = "ab" 

@param str the String to get the substring from, may be null 
@param start the position to start from, negative means 
count back from the end of the String by this many characters 
@param end the position to end at (exclusive), negative means 
count back from the end of the String by this many characters 
@return substring from start position to end positon, 
null if null String input 
public static String substring(String str, int start, int end) 


15、 SubStringAfter/SubStringBefore(前後子字串處理: 


Gets the substring before the first occurance of a separator. 

The separator is not returned. 


A null string input will return null. 

An empty ("") string input will return the empty string. 
A null separator will return the input string. 


返回指定字串之前的所有字元 StringUtils.substringBefore(null, *) = null StringUtils.substringBefore("", *) = "" StringUtils.substringBefore("abc", "a") = "" StringUtils.substringBefore("abcba", "b") = "a" StringUtils.substringBefore("abc", "c") = "ab" StringUtils.substringBefore("abc", "d") = "abc" StringUtils.substringBefore("abc", "") = "" StringUtils.substringBefore("abc", null) = "abc" 

@param str the String to get a substring from, may be null 
@param separator the String to search for, may be null 
@return the substring before the first occurance of the separator, 
null if null String input 
@since 2.0 
public static String substringBefore(String str, String separator) 

16、 

Gets the substring after the first occurance of a separator. 

The separator is not returned. 


A null string input will return null. 

An empty ("") string input will return the empty string. 
A null separator will return the empty string if the 
input string is not null. 


返回指定字串之後的所有字元 StringUtils.substringAfter(null, *) = null StringUtils.substringAfter("", *) = "" StringUtils.substringAfter(*, null) = "" StringUtils.substringAfter("abc", "a") = "bc" StringUtils.substringAfter("abcba", "b") = "cba" StringUtils.substringAfter("abc", "c") = "" StringUtils.substringAfter("abc", "d") = "" StringUtils.substringAfter("abc", "") = "abc" 

@param str the String to get a substring from, may be null 
@param separator the String to search for, may be null 
@return the substring after the first occurance of the separator, 
null if null String input 
@since 2.0 
public static String substringAfter(String str, String separator) 

17、 

Gets the substring before the last occurance of a separator. 

The separator is not returned. 


A null string input will return null. 

An empty ("") string input will return the empty string. 
An empty or null separator will return the input string. 


返回最後一個指定字串之前的所有字元 StringUtils.substringBeforeLast(null, *) = null StringUtils.substringBeforeLast("", *) = "" StringUtils.substringBeforeLast("abcba", "b") = "abc" StringUtils.substringBeforeLast("abc", "c") = "ab" StringUtils.substringBeforeLast("a", "a") = "" StringUtils.substringBeforeLast("a", "z") = "a" StringUtils.substringBeforeLast("a", null) = "a" StringUtils.substringBeforeLast("a", "") = "a" 

@param str the String to get a substring from, may be null 
@param separator the String to search for, may be null 
@return the substring before the last occurance of the separator, 
null if null String input 
@since 2.0 
public static String substringBeforeLast(String str, String separator) 

18、 

Gets the substring after the last occurance of a separator. 

The separator is not returned. 


A null string input will return null. 

An empty ("") string input will return the empty string. 
An empty or null separator will return the empty string if 
the input string is not null. 


返回最後一個指定字串之後的所有字元 StringUtils.substringAfterLast(null, *) = null StringUtils.substringAfterLast("", *) = "" StringUtils.substringAfterLast(*, "") = "" StringUtils.substringAfterLast(*, null) = "" StringUtils.substringAfterLast("abc", "a") = "bc" StringUtils.substringAfterLast("abcba", "b") = "a" StringUtils.substringAfterLast("abc", "c") = "" StringUtils.substringAfterLast("a", "a") = "" StringUtils.substringAfterLast("a", "z") = "" 

@param str the String to get a substring from, may be null 
@param separator the String to search for, may be null 
@return the substring after the last occurance of the separator, 
null if null String input 
@since 2.0 
public static String substringAfterLast(String str, String separator) 


八、 Replacing(字串替換) 
19、 
Replaces all occurances of a String within another String. 


A null reference passed to this method is a no-op. 


以指定字串替換原來字串的的指定字串 StringUtils.replace(null, *, *) = null StringUtils.replace("", *, *) = "" StringUtils.replace("aba", null, null) = "aba" StringUtils.replace("aba", null, null) = "aba" StringUtils.replace("aba", "a", null) = "aba" StringUtils.replace("aba", "a", "") = "aba" StringUtils.replace("aba", "a", "z") = "zbz" 

@param text text to search and replace in, may be null 
@param repl the String to search for, may be null 
@param with the String to replace with, may be null 
@return the text with any replacements processed, 
null if null String input 
@see #replace(String text, String repl, String with, int max) 
public static String replace(String text, String repl, String with) 

20、 

Replaces a String with another String inside a larger String, 

for the first max values of the search String. 


A null reference passed to this method is a no-op. 


以指定字串最大替換原來字串的的指定字串 StringUtils.replace(null, *, *, *) = null StringUtils.replace("", *, *, *) = "" StringUtils.replace("abaa", null, null, 1) = "abaa" StringUtils.replace("abaa", null, null, 1) = "abaa" StringUtils.replace("abaa", "a", null, 1) = "abaa" StringUtils.replace("abaa", "a", "", 1) = "abaa" StringUtils.replace("abaa", "a", "z", 0) = "abaa" StringUtils.replace("abaa", "a", "z", 1) = "zbaa" StringUtils.replace("abaa", "a", "z", 2) = "zbza" StringUtils.replace("abaa", "a", "z", -1) = "zbzz" 

@param text text to search and replace in, may be null 
@param repl the String to search for, may be null 
@param with the String to replace with, may be null 
@param max maximum number of values to replace, or -1 if no maximum 
@return the text with any replacements processed, 
null if null String input 
public static String replace(String text, String repl, String with, int max) 


九、 Case conversion(大小寫轉換) 
21、 

Converts a String to upper case as per {@link String#toUpperCase()}. 


A null input String returns null. 


將一個字串變為大寫 StringUtils.upperCase(null) = null StringUtils.upperCase("") = "" StringUtils.upperCase("aBc") = "ABC" 

@param str the String to upper case, may be null 
@return the upper cased String, null if null String input 
public static String upperCase(String str) 22、 

Converts a String to lower case as per {@link String#toLowerCase()}. 


A null input String returns null. 


將一個字串轉換為小寫 StringUtils.lowerCase(null) = null StringUtils.lowerCase("") = "" StringUtils.lowerCase("aBc") = "abc" 

@param str the String to lower case, may be null 
@return the lower cased String, null if null String input 
public static String lowerCase(String str) 23、 

Capitalizes a String changing the first letter to title case as 

per {@link Character#toTitleCase(char)}. No other letters are changed. 


For a word based alorithm, see {@link /WordUtils#capitalize(String)}. 

A null input String returns null. 


StringUtils.capitalize(null) = null StringUtils.capitalize("") = "" StringUtils.capitalize("cat") = "Cat" StringUtils.capitalize("cAt") = "CAt" 

@param str the String to capitalize, may be null 
@return the capitalized String, null if null String input 
@see /WordUtils#capitalize(String) 
@see /uncapitalize(String) 
@since 2.0 
將字串中的首字母大寫 
public static String capitalize(String str)