分析指定字符在字符串中出现的次数(如A1,A3)在下列字符串中出现的次数A1,A1,A1,A1,A1,A1,A1,A1,A1,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3

解决方案 »

  1.   

     string temp = "A1,A1,A1,A1,A1,A1,A1,A1,A1,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3";
                    string[] temp_list = temp.Split(',');
                    int count1 = temp_list.Where(a => a.Equals("A1")).Count();//9
                    int count2 = temp_list.Where(a => a.Equals("A3")).Count();//14
      

  2.   

    本帖最后由 bdmh 于 2012-08-01 16:52:35 编辑
      

  3.   

    用个HashTable(Of String,Integer),添加这些字符串,查到已有就Value+1,没有就添一个Key
      

  4.   

    var query="A1,A1,A1,A1,A1,A1,A1,A1,A1,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3".Split(',')
    .GroupBy(x=>x).Select(g=>new{g.Key,c=g.Count()});
      

  5.   

    string s = "A1,A1,A1,A1,A1,A1,A1,A1,A1,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3";
    var query = from x in s.Split(',')
                group x by x into g
                select g + "出现了" + g.Count().ToString() + "次";
    foreach (string item in query)
    {
        Console.WriteLine(item);
    }
      

  6.   

    这么多人用Linq啊,唉,我书还没有看到那儿呢。
      

  7.   

    string sr = "A1,A1,A1,A1,A1,A1,A1,A1,A1,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3,A3";
            string[] st = sr.Split(',');
            Dictionary<string, int> dic = new Dictionary<string, int>();
            foreach (string s in st)
            {
                if (dic.ContainsKey(s))
                    dic[s]++;
                else
                    dic.Add(s, 0);
            }