- 使用subString()方法截取子串:
String str = "abcdefghijklmn";
// 从index值为3的位置开始截取字符串,直到末尾(index从0开始)
str.substring(3); // defghijklmn
// 从索引号0开始截取到索引号为3的位置(不包括索引号为3的字符)
str.substring(0,3); // abc
- 使用StringUtils提供的方法截取字符串:
(1)substring(String str,int start):从指定位置开始截取至字符串末尾(下标从0开始)。
StringUtils.substring("china", 2); // ina
(2)substring(String str,int start, int end):指定了起始位置和结束位置,则从起始位置开始截取到结束位置(不包含结束位置)。
StringUtils.substring("hello world", 4, 10); // o wrol
(3)substringAfter(String str,String separator):从分隔符第一次出现的位置向后截取。
StringUtils.substringAfter("china", "i"); // na
(4)substringAfterLast(String str,String separator):从分隔符最后一次出现的位置向后截取。
StringUtils.substringAfterLast("china", "i"); // na
(5)substringBefore(String str,String separator):从分隔符第一次出现的位置向前截取。
StringUtils.substringBefore("china", "i"); // ch
(6)substringBeforeLast(String str,String separator):从分隔符最后一次出现的位置向前截取。
StringUtils.substringBefore("china", "i"); // ch
(7)substringBetween(String str,String tag):截取指定标记字符串之间的字符序列。
StringUtils.substringBetween("tagabctag", "tag") // "abc"
- split()+正则表达式来进行截取,将字符串用指定字符分割,返回数组。
String str = "张三,男,27";
String[] strs=str.split(",");
for(String s: strs){
System.out.println(s);
}
输出结果:
张三
男
27
参考链接:
StringUtils工具类常用方法汇总1(判空、转换、移除、替换、反转);StringUtils工具类常用方法汇总2(截取、去除空白、包含、查询索引);
几个经常用到的字符串的截取;
JAVA 截取字符串的几种方法