Java apache commons-lang3 库 StringUtils 类 split 方法


#Java Apache Commons 库#


为了方便阅读代码,本文中直接用了 println,这需要一些技巧,因为 import static java.lang.System.out.println; 是错误的。具体方法见 Java 如何静态导入 import static println

StringUtils 类的全路径:

import org.apache.commons.lang3.StringUtils;

StringUtils 类中 split 方法有很多,这里介绍部分。

splitByWholeSeparatorPreserveAllTokens 拆分字符串

splitByWholeSeparatorPreserveAllTokens 会将字符串按照指定字符串拆分。

String[] result;
result = StringUtils.splitByWholeSeparatorPreserveAllTokens("ab:cd:ef", ":");
println( Arrays.toString(result) ); // ["ab", "cd", "ef"]

result = StringUtils.splitByWholeSeparatorPreserveAllTokens("ab::cd:ef", ":");
println( Arrays.toString(result) ); // ["ab", "", "cd", "ef"]

result = StringUtils.splitByWholeSeparatorPreserveAllTokens(":ab::cd:ef", ":");
println( Arrays.toString(result) ); // ["", "ab", "", "cd", "ef"]

result = StringUtils.splitByWholeSeparatorPreserveAllTokens(":ab::cd:ef", "::");
println( Arrays.toString(result) ); // [":ab", "cd:ef"]

splitByWholeSeparator 拆分字符串

splitByWholeSeparator 会将字符串按照指定字符串拆分,同时,会去除空字符串。

String[] result;
result = StringUtils.splitByWholeSeparator("ab:cd:ef", ":");
println( Arrays.toString(result) ); // ["ab", "cd", "ef"]

result = StringUtils.splitByWholeSeparator("ab::cd:ef", ":");
println( Arrays.toString(result) ); // ["ab", "cd", "ef"]

result = StringUtils.splitByWholeSeparator(":ab::cd:ef", ":");
println( Arrays.toString(result) ); // ["ab", "cd", "ef"]

result = StringUtils.splitByWholeSeparator(":ab::cd:ef", "::");
println( Arrays.toString(result) ); // [":ab", "cd:ef"]

( 本文完 )