Csharp: Searching Within a String

來源:互聯網
上載者:User
 1  /// <summary> 2     /// 20130118 3     /// 搜尋字串是否存在 4     /// 塗聚文 締友計算機資訊技術有限公司 5     /// 捷為工作室 6     /// </summary> 7     public class StringSearchClass 8     { 9         /// <summary>10         /// 尋找字串11         /// StringIndexOf("1,2,3,4,5,6", "1,8");12         /// </summary>13         /// <param name="str1">字串</param>14         /// <param name="judgestr">尋找的字元或串</param>15         /// <returns>返回是否存在</returns>16         public static bool StringIndexOf(string str1, string searchstr)17         {18             bool isExist = true;19             str1 = "," + str1 + ",";20             string[] strs = searchstr.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);21             foreach (string strtemp in strs)22             {23                 if (str1.IndexOf(',' + strtemp + ',') == -1)24                 {25                     isExist = false;26                     break;27                 }28             }29             return isExist;30         }31         /// <summary>32         /// 尋找字串 33         /// 塗聚文34         /// </summary>35         /// <param name="str1">字串</param>36         /// <param name="judgestr">尋找的字元或字串</param>37         /// <returns></returns>38         public static bool StringContains(string str1, string searchstr)39         {40             bool isExist = true;41             str1 = "," + str1 + ",";42             string[] strs = searchstr.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);43             foreach (string strtemp in strs)44             {45                 if (!str1.Contains(',' + strtemp + ','))46                 {47                     isExist = false;48                     break;49                 }50             }51             return isExist;52         }53         /// <summary>54         /// 尋找字串55         /// 塗聚文56         /// </summary>57         /// <param name="str1">字串</param>58         /// <param name="judgestr">尋找的字元或字串</param>59         /// <returns></returns>60         public static bool StringRegex(string str1, string searchstr)61         {62             bool isExist = true;63             str1 = "," + str1 + ",";64             string[] strs = searchstr.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);65             foreach (string strtemp in strs)66             {67                 if (!Regex.Match(str1, strtemp, RegexOptions.IgnoreCase).Success)68                 {69                     isExist = false;70                 }71             }72             return isExist;73         }74     }

測試:

1 //測試2             Stopwatch sw = new Stopwatch();3             4             sw.Start();5            // bool s = StringIndexOf("1,2,3,4,5,6", "1,6");//True,所耗時間:00:00:00.00035576            // bool s = StringContains("1,2,3,4,5,6", "1,6");//True,所耗時間:00:00:00.00036257             bool s = StringRegex("1,2,3,4,5,6", "1,6");//False,所耗時間:00:00:00.0286617 //True,所耗時間:00:00:00.0008295 //True,所耗時間:00:00:00.00082378            sw.Stop();9            this.textBox1.Text=s.ToString()+",所耗時間:"+sw.Elapsed.ToString();

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.