C# 字符串处理

     1、比较字符串

  String 类提供了一系列的方法用于字符串的比较,如CompareTo 和 Equals方法等。

  ① CompareTo :

  如果参数的值与此实例相等,则返回0;如果此实例大于参数的值,则返回1;否则返回-1。

  string str1 = "abc";

  int m1 = str1.CompareTo("abc"); // m1 = 0

  int m2 = str1.CompareTo("ab"); //m2 = 1

  int m3 = str1.CompareTo("abcd"); // m3 = -1

  ②Equals

  如果参数的值与此实例相同,则为true;否则为false。

  string str1 = "abC",str2 = "abc",str3 = "abC";

  bool b1 = str1.Equals(str2); //false

  bool b2 = str1.Equals(str3);//true

  注意:Equals 方法区分大小写。

  2、定位字符及子串

  定位字符串中某个字符或子串第一次出现的位置使用IndexOf方法。

  如果找到该字符,则为参数值得的索引位置,从0开始;如果未找到该字符,则为-1;如果参数为Empty,则返回值为0。

  string str1 = "abcd";

  int m1 = str1.IndexOf("b"); // 1

  int m2 = str1.IndexOf("cd");// 2

  int m3 = str1.IndexOf(""); // 0

  int m4 = str1.IndexOf("w");// -1

  3、格式化字符串

  //格式化为Currency类型

  string str1 = String.Format("(C) Currency:{0:C}\n",-123.45678f);  //(C) Currency:¥-123.46

  //格式化为ShortDate类型

  string str2 = String.Format("(d) Short date:{0:d]\n",DateTime.Now); //(d) Short date:2009/11/6

  4、截取字符串

  string str = "Hello World!";

  string str1 = str.Substring(0,5);// Hello

  第一个参数表示子串的起始位置,第二个参数表示子字符串的长度。

  5、分裂字符串

  Split 方法可以把一个字符串按照某个分隔符分裂成一系列小的字符串

  string str = "Hello.World!";

  string[] spilt = str. Split('.' , '!');

  foreach (string s in spilt)

  {

  if(s.Trim() != "")

  Console.WriteLine(s);

  }

  6、插入和填充字符串

  ①插入字符串

  string str = "This is a girl";

  str = str.Insert(10,"beautiful ");// This is a beautiful girl

  第一个参数指定所要插入的位置,索引从0 开始;第二个参数指定要插入的字符串。

  ②填充字符串

  string str = "Hello World!";

  string str1 = str.PadLeft(15,'@');  //@@@Hello World!

  string str2 = str.PadRight(15,'@');  //Hello World!@@@

  第一个参数指定了填充后字符串长度;第二个参数指定所要填充的字符。第二个参数可以省略,如果省略,则填充空格符号。

  7、删除和剪切字符串

  ①删除字符串

  string str = "This is a beautiful girl.";

  str = str.Remove(10,10); // This is a girl.

  第一个参数指定开始删除的位置,索引从0开始;第二个参数指定要删除的字符数量。

  ②剪切字符串

  string str = "*_*Hello World! *_*";

  string str1 = str.TrimStart(new char[] {'*','_'});//Hello World! *_*

  string str2 = str.TrimEnd(new char[] {'*','_'});//*_*Hello World!

  8、复制字符串

  String str="It is a dog";

  String newstr=String.Copy(str);

  9、替换字符串

  String str="It is a dog";

  str=str.Replace("dog","pig");

  10、判断字符串是否为空

  string str = "aa";

  bool b = String.IsNullOrEmpty(str);

  11、判断字符串是否包含中文

  string str = "aaaaa";

  bool b = Regex.IsMatch(str, @"[\u4e00-\u9fa5]");

  12、判断字符串是否包含另一字符串

  string str1 = "你好!XXXX";

  string str2 = "你好";

  bool b = str1. Contains(str2);

       13、List 转换成字符串

       List<string> ls = new List<string>(); 

       string str = string.Join("," ,ls.ToArray());

       14、string 去重

       string str1 = "1,2,3,4,5,4,5";

       string str2 = string.Join(",",str1.Distinct().ToArray());// 1,2,3,4,5

posted @ 2016-08-18 22:23  lhd0525  阅读(332)  评论(0编辑  收藏  举报