string类(二、常用string函数)

时间:2022-03-04 08:18:17

常用string相关,参至System.String类:

1/ string.Length

a.Length字符串长度

string a="a5";  //a.Length==2
string b="-1"; //b.Length==2

2/ string.Contains

a.Contains(string value)判断字符串是否含有指定字符串(区分大小写)

string a="E50";
bool 0=a.Contains("e"); //false
bool k=a.Contains("5"); //true

3/ string.Copy

string.Copy(string value)创建一个与指定string同值的新string(static)

string a="E1";
string aa=string.Copy(a); //E1

4/ string.EndsWith string.StartsWith

a.EndsWith(string value) 确定此字符串的结尾是否与指定的字符串匹配,区分大小写*

a.EndsWith(string value,bool ignoreCase,CultureInfo culture) 功能同上

2参数为是否忽视大小写 Ture忽视false不忽视,3参数为确定如何对此实例与value进行比较的区域性信息。

如果culture为null,则使用当前区域性;不需要则设置null,否则会被认为在调用第三种重载

a.EndsWith(string value,StringComparison comparisonType) comparisonType:枚举值之一,用于确定如何比较此字符串与value。

StartsWith同EndsWith

   string a="45E";
a.EndsWith("E") //true
a.EndsWith("e") //false
a.EndsWith("e",true,null) //true

5/ string.Equals

a.Equals(string value) 确定此实例是否与指定的string 对象具有相同的值

string.Equals(string a,string b) 确定两个指定的System.String对象是否具有相同的值(static)

   string a="Ec";
string b="ec";
bool t1=a.Equals(b); //false
bool t2=a.Equals("EC");//true
string.Equals(a,b) //false

6/ string.IndexOf

a.IndexOf(string value) 报告指定字符在此字符串中的第一个匹配项的从零开始的索引。

a.IndexOf(string value,int startIndex) 同上并:该搜索从指定字符位置开始。

a.IndexOf(string value,int startIndex,int count)同上并:检查指定数量的字符

注:返回的值依旧是从首字符开始计数

string a="1Ec11";
string b="c";
a.IndexOf(b,1,1); //-1
a.IndexOf(b,1); //2 (而不是1)

7/ string.IndexOfAny

a. IndexOfAny(char[] anyOf) 报告指定字符数组中的任意字符在此实例中第一个匹配项的从零开始的索引。

a. IndexOfAny(char[] anyOf,int startIndex)同上并:该搜索从指定字符位置开始。

a. IndexOfAny(char[] anyOf,int startIndex,int count)同上并:检查指定数量的字符

string a="1Ec11";
char[] tt={'a','b','1'};
a.IndexOfAny(tt) //0

8/ string.Insert

a.Insert(int startIndex, string value)返回指定字符串在这种情况下插入在指定索引位置的新字符串(然后插入项的首字符索引为startIndex)

string a="1Ec11";
a.Insert(2,"Hello"); //1EHelloc11

9/ string.IsNullOrEmpty string.IsNullOrWhiteSpace[static]

字符串判空

string a="";
string b=string.Empty;
string b=" ";
string.IsNullOrEmpty(a); //true (无字符)
string.IsNullOrEmpty(b); //true
string.IsNullOrEmpty(c); //false (有个空格,不为空)
string.IsNullOrWhiteSpace(c) //true(其他都一样,只比IsNullOrEmpty多了个空格验证)

10/ string.LastIndexOf

a.LastIndexOf(string value) 报告指定字符在此实例中的最后一个匹配项的从零开始的索引位置(数索引时把value当初一个整体)

a.LastIndexOf(string value, int startIndex)同上并:在指定的字符位置开始和在向后的右边该字符串的开头处理的搜索。

LastIndexOf(string value, int startIndex, int count)同上并:检查指定数量的字符

11/ string.LastIndexOfAny

a.LastIndexOfAny(char[] anyOf) 报告在数组中指定的一个或多个字符在此实例中的最后一个匹配项的从零开始的索引位置。

a. LastIndexOfAny(char[] anyOf, int startIndex)同上并: 在指定的字符位置开始和在向后的右边该字符串的开头处理的搜索。

a.LastIndexOfAny(char[] anyOf, int startIndex, int count)同上并: 检查指定数量的字符

12/ string.PadLeft string.PadRight

a.PadLeft(int totalWidth) 返回一个新字符串,该字符串通过在此实例中的字符左侧填充空格来达到指定的总长度,从而实现右对齐。(totalWidth小于当前长度则不做操作)

a.PadLeft(int totalWidth,char paddingChar)同上并:用指定字符填充

—a.PadRight同左一致,为右对齐

string a="abc";
a.PadLeft(5); //空格空格abc
a.PadLeft(5,TT);//TTabc

13/ string.Remove

a.Remove(int startIndex)返回移除a中从指定位置到最后位置的所有字符后的新字符串(a值本身不会变)

a.Remove(int startIndex, int count)同上并:移除指定个数

string a="132456";
a.Remove(1); //返回1 ;a值仍为"123456"
a.Remove(1,2);//返回1456

14/ string.Replace

a.Replace(char oldChar, char newChar)

a.Replace(string oldValue, string newValue)返回一个新字符串,其中此实例中出现的所有指定字符都替换为另一个指定的字符。(a值本身不会变)

string a="13a24a56";
a.Replace("a","bb"); //13bb24bb56

15/ string.Split

a.Split(params char[] separator);返回的字符串数组包含此实例中的子字符串(由指定 Unicode 字符数组的元素分隔)。[返回一个数组]

a.Split(char[] separator, int count)同上并:指定返回的子字符串的最大数量

注:若有多个分隔符,取出夹住的字符串做个数组一个元素,直到最后

string a ="123/a45/6666";
string b ="123/a45/a66a66";
a.Split(new char[]{'/'});//遍历打印:123 a45 6666
a.Split(new char[]{'/','a'});//遍历打印:123 "" 45 "" 66 66

16/ string.Substring

a.Substring(int startIndex) 从指定索引处提取子字符串(到结尾)

a.Substring(int startIndex, int length)同上并:限定提取长度

string a ="123/a45/6666";
a.Substring(0,2) // 123

17/ string.ToCharArray

a.ToCharArray() 将此字符串中所有字符复制到字符数组并返回。

a.ToCharArray(int startIndex, int length)同上并:从开始索引处复制指定个数字符串

string a ="123a";
a.ToCharArray(); //1 2 3 a
a.ToCharArray(0,2);//1 2 3

18/ string.ToLower() string.ToUpper()

a.ToLower()返回此字符串转换为小写形式的副本

a.ToUpper()返回此字符串转换为大写形式的副本

string a="Asd23";
a.ToLower(); //asd23
a.ToUpper(); //ASD23

19/ string.Trim string.TrimStart string.TrimEnd

a.Trim() 当前字符串移除所有前导空白字符和尾部空白字符并返回(a本身不会变)

a.Trim(params char[] trimChars)从当前字符串移除数组中指定的一组字符的所有前导匹配项和尾部匹配项。

a.TrimStart(params char[] trimChars)同上并:只移除所有前导匹配项

a.TrimEnd(params char[] trimChars)同上并:只移除所有后导匹配项

string a ="aaa4aa5/S66a6a6aaa";
char[] t1={'a'};
char[] tt={'a','6'};
a.Trim(t1);// 4aa5/S66a6a6
a.Trim(t2);// 4aa5/S

20/ string.Compare string.CompareOrdinal [static]

string.CompareTo这几个比较项详见string类比较相关