截取字符串substring()的用法:
1、截取指定字符上的字符串:
substring(start,end)
start:开始的位置(从0开始索引)包括该位置的字符,不可省略
end:结束的位置(不包括该位置上的字符),可省略
例:
String str="周一的天气真好啊!";
str=str.substring(1,2);
此时 str的结果就是“一”了;
若 start 与 end 相等,那么返回的就是一个空串
若 start 比 end 大,那么在提取子串之前会先交换这两个参数
若 start 或 end 为负数,那么它将被替换为 0
String str = "1234567"; if(str.indexOf("23") != -1) { System.out.println("包含该字符串"); }
3、 截去前面的字符,保留后面所有的字符:
例:
String str="星期六";
str=str.substring(2);
此时str里面剩下 "六"
截取某字符串或者路径中的某字符串的方法substr(start,length)、substring(start,end)、charAt(int index)、indexOf(int str,int fromIndex)
substr(start,length) :substr是从起始点截取某个长度的字符串
substring(start,end):substring是截取2个位置之间及start-end之间的字符串
charAt(int index):实现从字符串中提取指定位置的字符
indexOf(int str,int fromIndex):返回指定字符在此字符串中第一次出现处的索引。如果在此 String 对象表示的字符序列中出现值为 str 的字符,则返回第一次出现该字符的索引(以 Unicode 代码单元表示)
经常用到的字符串的截取
string str="123abc456";
int i=3;
1 取字符串的前i个字符
str=str.Substring(0,i); // or str=str.Remove(i,str.Length-i);
2 去掉字符串的前i个字符:
str=str.Remove(0,i); // or str=str.Substring(i);
3 从右边开始取i个字符:
str=str.Substring(str.Length-i); // or str=str.Remove(0,str.Length-i);
4 从右边开始去掉i个字符:
str=str.Substring(0,str.Length-i); // or str=str.Remove(str.Length-i,i);
5 判断字符串中是否有"abc" 有则去掉之
using System.Text.RegularExpressions;
string str = "123abc456";
string a="abc";
Regex r = new Regex(a);
Match m = r.Match(str);
if (m.Success)
{
//绿色部分与紫色部分取一种即可。
str=str.Replace(a,"");
Response.Write(str);
string str1,str2;
str1=str.Substring(0,m.Index);
str2=str.Substring(m.Index+a.Length,str.Length-a.Length-m.Index);
Response.Write(str1+str2);
}
6 如果字符串中有"abc"则替换成"ABC"
str=str.Replace("abc","ABC");