使用循环解析HTML源代码

时间:2015-07-15 22:28:44

标签: c# html

我有一点问题,我试图在我的代码中解析HTML字符串,但我想要它做的是将每个数字之间的空格分开各个数字,即: - “”。

我已经使这个循环摆脱了标签

char[] array = new char[source.Length];
        int arrayIndex = 0;
        bool inside = false;
        for (int i = 0; i < source.Length; i++)
        {
            numberfori = i;
            char let = source[i];

            if (let == '<')
            {
                inside = true;
                continue;
            }
            if (let == '>')
            {
                inside = false;                    
                continue;

            }
            if (!inside)
            {
                array[arrayIndex] = let;
                Console.WriteLine(arrayIndex);
                arrayIndex++;
            }
        }
        return new string(array, 1, arrayIndex);

现在返回: -

201549.0717593 / 2203.5732.6719.4412.86

但我需要: -

2015 49.0 7 175 9 3/22 0 3.57 32.67 19.44 12.86

这是循环运行的HTML代码字符串,供您查看,以便您知道我从何处获取: -

>2015</a></td><td class="text-right">49.0</td><td class="text-right">7</td><td class="text-right">175</td><td class="text-right">9</td><td class="text-right"><a href="/website/results/2361208" target="_blank">3/22</a></td><td class="text-right">0</td><td class="text-right">3.57</td><td class="text-right">32.67</td><td class="text-right">19.44</td><td class="text-right">12.86</td></tr><tr><td><a data

最终我想把这些数字中的每一个都放到他们自己的变量中,但我需要先拆分它们,这是第一个任务一步一步:)

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

尝试添加此内容:

if (let == '>')
{
    inside = false;   
    if (arrayIndex > 0 && array[arrayIndex - 1] != ' ')
    {
        array[arrayIndex] = ' '; 
        arrayIndex++;
    }
    continue;
}