当前位置:编程学习 > C#/ASP.NET >>

如何精确匹配字符串?

例:
   string stra="abcde,1151,777999 ";
   string strb="777";
 要得到的结果是
   stra并不包含strb中的字符串


   
   


--------------------编程问答--------------------

            string stra = "abcde,1151,777999 ";
            string strb = "777";
            stra = stra.Replace(strb, string.Empty);
--------------------编程问答--------------------
引用 1 楼 tangdunfeng 的回复:
C# codestring stra="abcde,1151,777999";string strb="777";
            stra= stra.Replace(strb,string.Empty);


同意楼上的
不知是否要考虑大小写
还有就是替换后会不会出现新的相匹配项

 string stra = "abcde,1151,7ababcc99 ";
            string strb = "abc";
第一次替换后
 stra = stra.Replace(strb, string.Empty);
结果为  stra = "de,1151,7abc99 "
中间还会产生一个新的abc,这个问题需要考虑一下


--------------------编程问答--------------------
        static void Main()
        {
            string stra = "abcde,1151,777999 ";
            string strb = "777";

            string strc = Fun(stra, strb);
            Console.WriteLine(strc);//abcde,1151
            Console.ReadKey();
        }

        static string Fun(string stra, string strb)
        {
            string[] sp = stra.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
            string strc = string.Empty;
            bool first = true;
            foreach(string item in sp)
            {
                if(item.IndexOf(strb) == -1)
                {
                    if(first)
                        strc += item;
                    else
                        strc += "," + item;
                    first = false;
                }
            }
            return strc;
        }
--------------------编程问答-------------------- if(stra.Contains(strb)) 
{}

string[] arr= stra.Split(new char[]{','}, StringSplitOptions.RemoveEmptyEntries);
foreach(string s in arr)
{
 if(s.Equals(strb)){}
} --------------------编程问答-------------------- 不用.net类库可以自己写代码,KMP算法效率很高
http://www.cnblogs.com/zhy2002/archive/2008/03/31/1131794.html
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,