目录
String str="GT_qwe rty12_1234-op";
1.Split分割字符串
Split('')--单个字符切割字符串char
string[] b = str.Split('_');
得到b[0]=GT,b[1]=qwe rty12,b[3]=1234-op
Split("", StringSplitOptions.None);--根据字符串切割string,StringSplitOptions.None拆分时不需要包含空字符串
string[] b=str.Split(new string[]{"we","12"},StringSplitOptions.None);
得到b[0]=GT_q,b[1]=rty,b[2]=_,b[3]=34-op
2.substring截取字符串 同等slice
substring(int)--从第几个字符开始截取
string b=str.substring(5);
得到b="e rty12_1234-op"
substring(int,int)--从第几个字符截取到第几个字符
string b=str.substring(5,8);
得到b="e r"
3.remove移除字符串
remove(int n)--从0开始移除n个
string b=remove(5);
得到b="e rty12_1234-op"
remove(int m,int n)--从第m个开始移除n个
string b=remove(5,3);
得到b="GT_qwty12_1234-op"
4.Replace替换
Replace(char,char) --第一个参数是旧字符,第二个参数是要被替换的新字符
string b = str.Replace('_','&');
得到b="GT&qwe rty12&1234-op"
Replace(string,string)同等于char,不同点是char是单个字符,string是字符串
Relace(string,string,Boolean )替换时是否忽略大小写
例外:若新字符是"",意义相当于删除旧字符
5.indexof和lastindexof
"G T _ q w e r t y 1 2 _ 1 2 3 4 - o p";
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
indexof--从数组开头向后开始查找目标数所在的位置,然后返回它的索引值。没有返回-1
int b=str.indexof(1)
得到b=9
indexof(m,n)--从n开始找到m的索引值,没有返回-1
int b=str.indexof("1",2)
得到b=10
int b=str.indexof("1",12)
得到b=14(相当于跳过了长度12以前的1,找到长度12以后的1的索引值)
lastindexof--返回最后一次字符出现的位置,没有返回-1
int b=str.lastindexof("1")
得到b=12
lastindexof(m,n)--从n开始查找m最后出现的位置(在n前边找m)
int b=str.lastindexof("1",12)
得到b=9
int b=str.lastindexof("1",3)
得到b=-1
lastIndexOf()方法虽然是从后往前搜索,但返回的位置是从前开始数的。
6.其他常用操作字符串
str.length=19--str的长度
str.charAt(n)=_ --返回str中n位置的字符
str.charCodeAt(n) --返回str中n位置字符的Unicode 编码
str1.concat(str2); --拼接str1和str2
str.endsWith("n") --判断str是否是以n结尾的 true是,false否
str.startsWith("n");--判断str是否是以n开头的 true是,false否
str.includes("n"); --判断str中是否包含n,true是,false否
str.repeat(n);--赋值str n次
str.substr(start,length)--从start开始截取length个字符
str.toLowerCase()--将str全部转化为小写
str.toLocaleUpperCase();--将str全部转化为大写