1. 程式人生 > >StringUtils常用方法--個人總結

StringUtils常用方法--個人總結

包:org.apache.commons.lang.StringUtils

maven: <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>3.1</version>
              </dependency>

1. 檢查字串是否為空

     StringUtils.isBlank(string);當string為空、長度為零、僅由空白字元(whitespace)組成時,返回True;否則返回False

String test = "";  // true
String test2 = "\n\n\t"; // true
String test3 = null; // true
String test4 = "Test"; // false

2. 部分擷取字串

     StringUtils.substringBetween(testString,fromString,toString )  取得兩字元之間的字串
     StringUtils.substringAfter

( )  取得指定字串後的字串
     StringUtils.substringBefore( )  取得指定字串之前的字串
     StringUtils.substringBeforeLast( )  取得最後一個指定字串之前的字串
     StringUtils.substringAfterLast( )  取得最後一個指定字串之後的字串

String test = " 25 * (30,40) [50,60] | 30";
StringUtils.substringBeforeLast( test, "*" ); // 25
StringUtils.substringBetween( test, "(" , "," ); // 30
StringUtils.substringBetween( test, "," , ")" ); // 40
StringUtils.substringBetween( test, "[" , "," ); // 50
StringUtils.substringBetween( test, "," , "]" ); // 40) [50,60
StringUtils.substringAfterLast( test, "|" ); // 30

3. 分割成陣列

    StringUtils.split(a,"b")  用b來把a字串分割成陣列,如果split(a, "." ),就會分割失敗,因為引數"b"是正則表示式,而不是普通字串,而"."在正則表示式中表示匹配所有單個字元,因此,要用轉義字元split(a, "\\." )

String a = "A b,c.d|e";
String[] array1 = StringUtils.split( a, " ,.|"); 
ArrayUtils.toString(a); // {A,b,c,d,e}

4. 縮排字串

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

StringUtils.abbreviate("abcdefg", 20); // abcdefg
StringUtils.abbreviate("abcdefg", 4); // a...

5. 顛倒字串

    StringUtils.reverse(String);得到String顛倒後的字串

StringUtils.reverse("ABCDE"); // EDCBA

6. 取得某字串在另一字串中出現的次數

    StringUtils.countMatches(a, b);取得b在a中出現的次數,未發現則返回零

StringUtils.countMatches( "Chinese People", "e"); // 4

7. 判斷字串內容的型別

    StringUtils.isNumeric( a ) :如果a全由數字組成返回True
    StringUtils.isAlpha( a ) :如果a全由字母組成返回True
    StringUtils.isAlphanumeric( a ) :如果a全由數字或數字組成返回True
    StringUtils.isAlphaspace( a )  :如果a全由字母或空格組成返回True

String a = "Virginia";
StringUtils.isNumeric(a); // false
StringUtils.isAlpha(a); // true
StringUtils.isAlphanumeric(a); // true
StringUtils.isAlphaSpace(a); // true

8. 在左邊補全字串

    StringUtils.leftPad(a, num, b );  在字串a的左邊用字串b補足到num位

StringUtils.leftPad("123", 5, "9"); // 99123 
StringUtils.leftPad("7", 3, "0"); // 007 

9. 去掉字串中的空格 

    StringUtils.deleteWhitespace(string a);

String newInfo = StringUtils.deleteWhitespace(info);