C#从字符串中提取Ints并进行比较

时间:2016-09-08 20:16:13

标签: c# compare

比如说,我有一些来自少数运动比赛的结果,每支球队都有一个字母代表。我希望专注于Team' A'并将其得分与其他团队进行比较,打印出A队赢得,丢失,抽出等多少场比赛......下面显示的示例字符串

string results = " A 1 B 0, A 2 C 4, A 1 D 8, A 5 E 9";

我认为最好的方法是提取A队的所有分数并用它们填充数组,并对其余分数进行相同的操作。我已经尝试过索引来解决这个问题,但仍然感到难过。有什么想法吗?

编辑:由于没有发布尝试:

char[] tobeconverted = results.Where(Char.IsDigit).ToArray();
        int[] sequence = new int[10];

        for (int i = 0; i < tobeconverted.Length; i++)
        {
            sequence[i] = Convert.ToInt32(tobeconverted[i].ToString());

        }

这会使用所有数字填充数组,因此我不确定如何区分它们。

        string teamA = "A ";
        int indexOfNextOccurance = results.IndexOf(teamA, results.IndexOf(teamA) + 1);

然后我计划使用带有子串的索引来提取数字并转换为int,但这仅适用于第一次和第二次出现,我不知道如何获取其他数值。

2 个答案:

答案 0 :(得分:0)

string results = "A 1 B 0, A 2 C 4, A 1 D 8, A 5 E 9";
        List<int> teamAScores = new List<int>();
        List<int> otherTeamScores = new List<int>();
        foreach(string scoreSet in results.Split(','))
        {
            scoreSet.Replace(" ", "");
            int teamA = -1;
            int teamX = -1;
            int.TryParse(scoreSet.Substring(1, 1), out teamA);
            int.TryParse(scoreSet.Substring(3, 1), out teamX);
            if (teamA > -1 && teamX > -1)
            {
                teamAScores.Add(teamA);
                otherTeamScores.Add(teamX);
            }
        }

现在您有一个列表,其中每个游戏的分数在索引方面匹配。

答案 1 :(得分:0)

  1. 用逗号分隔字符串。这将返回一个字符串数组。
  2. 按空格分割数组中的每个字符串。这导致另一个数组。
  3. 提取阵列的成员。
  4. 这是一个示例程序。

    f, axarr = plt.subplots(2, 2)
    axarr[0, 0].plot(tt,psol[0,:],'k')
    axarr[0, 1].plot(tt,psol[1,:],'k')
    axarr[1, 0].plot(tt,psol[2,:],'k')
    axarr[1, 1].plot(tt,psol[3,:],'k')
    y_formatter = ScalarFormatter(useOffset=True)                                       
    axarr[1,1].yaxis.set_major_formatter(y_formatter)
    axarr[1,1].ticklabel_format(useOffset=True)
    axarr[1,1].get_yaxis().get_major_formatter().set_scientific(True)
    axarr[1,1].get_yaxis().get_major_formatter().set_useOffset(True)
    

    将团队/分数封装在一个单独的课程中。

    $('#table-projects').on('click', 'button[id^="note"]', function(){