通过subString()方法来进行字符串截取,返回字符串的子字符串
1.传递一个参数
public String substring(int beginIndex)
String Str ="hello world";
System.out.println(Str.substring(4));//从第4位截取到字符串尾(o world)
2.传递两个参数
public String substring(int beginIndex,int endIndex)
System.out.println(Str.substringx(4,10));//从第4位截取到第10位(o worl)
通过StringUtils提供的方法
StringUtils.substring("hello world",4);//从第4位截取到字符串尾(o world)
StringUtils.substring("hello world",4,10);//从第4位截取到第10位(o worl)
//截取某个字符串之前的字符
StringUtils.substringBefore("hello world","l");//以第一个“l”为标准(he)
StringUtils.substringBeforeLast("hello world");//以最后一个“l”为标准(hello wor)
//截取某个字符串之后的字符
StringUtils.substringAfter("hello world","l");//以第一个“l”为标准(lo world)
StringUtils.substringAfterLast("hello world","l");//以最后一个“l”为标准(d)
//截取两个字符串之间隔的字符
StringUtils.substringBetween("hello world","o");//两个o之间的字符(w)
StringUtils.substringBetween("hello world","l","r");//第一个字符“l”与第一个字符“r”之间的字符串(lo wo)
StringUtils.substringsBetween("hello world", "l", "r");//第一个字符“l”与第一个字符“r”之间的字符串,以数组形式返回([lo wo])
split()+正则表达式来进行截取,将字符串按照分割符截取,以数组形式返回
String str = "11, 22, 33, 44, 55";
String[] strs=str.split(",");
for(int i=0,len=strs.length;i<len;i++){
System.out.println(strs[i].toString());
}
正则表达式
特殊字符 | 描述 |
---|---|
. | 表示任意一个字符 |
[abc] | 表示a,b,c中的任意一个字符 |
[^abc] | 除abc以外的任意字符 |
[a-zA-Z] | 介于a-z或A-Z中的任意一个字符 |
\s | 空白符(空格、tab、换行、换页、回车) |
\S | 非空白符 |
\d | 任意一个数字[0-9] |
\D | 任意一个非数字 [ ^0-9] |
\w | 词字符[a-zA-Z_0-9] |
\W | 非词字符 |
表示字符出现次数的符号
符号 | 描述 |
---|---|
* | 0次或多次 |
+ | 1次或多次 |
? | 0次或1次 |
{n} | 恰好n次 |
{n,m} | 至少n次,不多余m次 |