StringUtils常用方法介绍

1、空字符串检查

public static boolean isEmpty(String str);
public static boolean isNotEmpty(String str);

上面两个方法是判断字符串是否为”“或者null。

public static boolean isBlank(String str);
public static boolean isNotBlank(String str);

这两个方法可以判断空字符串如” “同时也可以判断是否为”“或者null

2、清除空白字符

StringUtils.trimToNull(str);
函数介绍:清除掉str首尾的空白字符,如果仅str全由空白字符组成则返回null。

注意:函数StringUtils.trim(str)
StringUtils.trimToNull(str)功能类似,但str由空白字符
组成时返回零长度字符串。

3、查找嵌套字符串

StringUtils.substringBetween(str,header,tail);

在str中取得header和tail之间的字符串。不存在则返回空.

4、取得字符串的缩写

StringUtils.abbreviate(str,width);
StringUtils.abbreviate(str,offset,width);
在给定的width内取得str的缩写,当testString的长度小于width则返回原字符串.
注意:width参数至少为4(包括…)

    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

5、去除尾部换行符
StringUtils.chomp(str)
去除str尾部的换行符\n

6、重复字符串
StringUtils.repeat(str,count)
得到将str重复count次后的字符串

   System.out.println( StringUtils.repeat( "*", 10));
   System.out.println( StringUtils.repeat( "China ", 5));

输出如下:
**********
China China China China China

StringUtils.center( str, count,repeatString );
把str插入将repeatString重复多次后的字符串中间,得到字符串
的总长为count

   System.out.println( StringUtils.center( "China", 11,"*"));

输出如下:
***China***

static String center(String str, int size);
默认以空格填充
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)
左侧字符串填充

7、颠倒字符串
StringUtils.reverse(str)
得到str中字符颠倒后的字符串

    System.out.println( StringUtils.reverse("ABCDE"));

输出如下:
EDCBA

8、判断字符串内容的类型

StringUtils.isNumeric( str);
如果str全由数字组成返回True.

StringUtils.isAlpha( str);
如果str全由字母组成返回True.

StringUtils.isAlphanumeric( str);
如果str全由数字或数字组成返回True.

StringUtils.isAlphaspace( str);
如果str全由字母或空格组成返回True.

StringUtils.isAlphanumericSpace(String str);
只由字母数字和空格组成

StringUtils.isNumericSpace(String str);
只由数字和空格组成

9、取得某字符串在另一字符串中出现的次数

StringUtils.countMatches(str,seqString);
取得seqString在str中出现的次数,未发现则返回零

 System.out.println(StringUtils.countMatches( "Chinese People", "e"));

输出:
4

10、部分截取字符串

StringUtils.substringBetween(testString,fromString,toString ):
取得两字符之间的字符串

StringUtils.substringAfter(str,seqStr ):
取得指定字符串后的字符串

StringUtils.substringBefore(str,seqStr ):
取得指定字符串之前的字符串

StringUtils.substringBeforeLast( str,seqStr ):
取得最后一个指定字符串之前的字符串

StringUtils.substringAfterLast(str,seqStr ):
取得最后一个指定字符串之后的字符串

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

11、首字母大写

StringUtils.capitalize(String str); 首字母大写
StringUtils.uncapitalize(String str);首字母小写

12、 是否全是大写,是否全是小写

StringUtils.isAllUpperCase(String str);
StringUtils.isAllLowerCase(String str);

13、大小写转换,空格不动

StringUtils.swapCase(String str);

StringUtils.swapCase(“I am a-A*a”)
返回结果:i AM A-a*A

14、数组转成字符串

StringUtil.convString(String str);
默认以逗号分隔
StringUtil.converString(String str, String conv) ;
用conv分隔

String[3] s={“a”,”b”,”c”}
StringUtil.convString(s)=”a,b,c”

String[3] s={“a”,”b”,”c”}
StringUtil.convString(s,”@”)=”a@b@c”

你可能感兴趣的:(java)