字符串 TemplateStr="'aaa','bbb','ccc','ddd'"
字符串 CurrentStr="'ggg','ccc','ttt','ddd'"两个字符串比较。TemplateStr作为比较的依据。凡是CurrentStr中有TemplateStr里相同的字符(用单引号里面的字符去比较)就返回true请问应该如何实现呢?

解决方案 »

  1.   

    return (TemplateStr == CurrentStr);
      

  2.   

    用String.Split以","分割成字符串数组,然后再比较
      

  3.   

    不好意思! 理解错误! 修正如下://自行优化..foreach (string var in CurrentStr.Split(','))
    {
        if (TemplateStr.IndexOf(var) != -1)
        {
            return true;
        }
    }return false;
      

  4.   

    把两个字符串都分割了,长度一样可以一层循环比较完成
    不一样的话,要两层循环才可以
    static void Main(string[] args)
            {
                string TemplateStr = "'aaa','bbb','ccc','ddd'";
                string CurrentStr = "'ggg','ccc','ttt','ddd'";
                string[] temp = TemplateStr.Split(new char[] { ',' });
                string[] current = CurrentStr.Split(new char[] { ',' });            for (int i = 0; i < temp.Length; i++)
                {
                    for (int j = 0; j < current.Length; j++)
                    {
                        if(temp[i].Equals(current[j]))
                            Console.WriteLine("ok");
                    }
                }
                Console.ReadLine();
            }
      

  5.   

    以一数组为基,再循环读取另一数组,再用Array.BinarySearch()方法得到返回要求!以你给的为例子>>
    for (int i = 0; i < CurrentStr[4].Length; tm++)
                        {
                                    if (Array.BinarySearch(TemplateStr, CurrentStr[i]) < 0)
                                    {
                                        return true;
                                    }
                        }
      

  6.   

    5楼正解,
    但用foreach更好些...
      

  7.   

    TO 5楼的virusplayer,两个字符串长度全都是不固定的,也不会一样长。谢谢各位,3楼的shinaterry的方法比较简单可行,已经实现。