C#中string的相关方法

下面的方法一般都有很多重载形式,作为初学者的我先把我用过的记录下来吧。。。以后用到其他的可以一点点添加;

直接上例子吧。先定义两个字符串str1,str2(不要吐槽命名==)

string str1,str2;

获取字符串的长度

int string.Length{get;};
1 str1="012345abc";
2 Console.WriteLine(str1.Length);

//output:9

转换大小写

1 string string.ToUpper();//转大写
2 string string.ToLower();//转小写
str1 = "123abcABC一二三";
Console.WriteLine(str1.ToUpper());
Console.WriteLine(str1.ToLower());

//output:
    123ABCABC一二三
    123abcabc一二三

比较字符串

bool string.Equals(string);
bool Equals(object,object);
1 str1 = "123ABC";
2 ste2 = "123abc";
3 
4 Console.WriteLine(str1.Equals(str2));//返回false
5 Console.WriteLine(Equals(str1,str2));//返回false
6 Console.WriteLine(str1.Equals(str2,StringComparison.OrdinalIgnoreCase));//返回true
7 //其中,StringComparison.OrdinalIgnoreCase枚举,忽略大小写比较

 分割字符串

1 string[] string.Split(params char[]);

 

str1 = "123abc";
string[] newSte = str1.Split('a');
foreach( var item in newStr )
{
    Console.WriteLine(item);
}
/*输出为:
123
bc
*/
    

 

因为参数类型有params修饰,所以Split()方法内部可以直接传入多个字符而不仅仅是字符数组,比如

str.Split('a','2');

 

那么他就会根据a和2分割成三段。

判断子串是否存在

bool string.Contains(string);

这个不多说

判断开头结尾,获取字串位置与截取符串

这四个666,结合起来用效果拔群

bool string.StartWith(string);//判断开头是不是输入的参数
bool string.EndWith(string);//判断结尾是不是传入参数
int string.IndexOf(string);//取子串第一次出现的位置
string string.SubString(int length);//截取子串
string string.SubString(int start,int lenhth);
 1 string str = "<sc>ascdsc";
 2 if(str.StartsWith("<"))//如果开头是<
 3 {
 4     if (!str.EndsWith(">"))//如果结尾不是>
 5     {
 6          int n = str.IndexOf(">");
 7         string ans = str.Substring(n + 1);
 8         Console.WriteLine(ans);
 9     }
10 }
11 //输出是:ascdsc

 

 

posted @ 2017-06-15 13:34  夜黔  阅读(273)  评论(0编辑  收藏  举报