首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

从网页提取几个数字,弄了一半不知道怎么处理了.

2014-01-22 
从网页提取几个数字,弄了一半不知道怎么办了..网页源码...trtd..月销售数量../td...td.../tdtd

从网页提取几个数字,弄了一半不知道怎么办了..
网页源码
...
<tr>
        <td>..月销售数量..</td>
        ...
        <td>...</td>
        <td>
            <ul>
            <li row="1" class="" onclick="OZ.r(this)" style="cursor:pointer" >696</li>
            <li row="1" class="" onclick="OZ.r(this)" style="cursor:pointer" >225</li>
            <li row="1" class="" onclick="OZ.r(this)" style="cursor:pointer" >236</li>
            </ul>
            <ul>
            <li row="1" class="" onclick="OZ.r(this)" style="cursor:pointer" >639</li>
            <li row="1" class="" onclick="OZ.r(this)" style="cursor:pointer" >210</li>
            <li row="1" class="" onclick="OZ.r(this)" style="cursor:pointer" >267</li>
            </ul>
        </td>
        <td>...</td>
        ...
        <td>...</td>
</tr>
...

C#代码:
IHTMLDocument2 iHTMLDocument2 = GetIHTMLDocument2(str);
HTMLDocumentClass document = (HTMLDocumentClass)(iHTMLDocument2.body.document); 
       foreach (IHTMLElement tr in document.getElementsByTagName("tr"))
                    if (tr.innerText.Contains("销售数量"))
                    {
                    
                    }

要提取那6个数字,tr.innerText的字符串把他们都连在一起了,大概是这个样子:
“月销售数量...696225236 639210267...”,用split()能切分吗,是不是只能用正则了,小弟不是程序员不懂正则,请高手指教!
[解决办法]
var matches = Regex.Matches(html, @"(?<=pointer""\s\>)\d+(?=\<\/li\>)");
foreach (var item in matches)
{
    Console.WriteLine(item.Value);
}
[解决办法]

引用:
错误1“object”不包含“Value”的定义,并且找不到可接受类型为“object”的第一个参数的扩展方法“Value”(是否缺少 using 指令或程序集引用?)

请问这是什么意思呢?

改成.ToString()即可
他在控制平台里面写的代码。
[解决办法]
foreach (var item in matches)
->
foreach (Match item in matches)

热点排行