1

我将一些数据作为字符串返回,并希望从该字符串(b/w Form 标签)中获取一些选定的数据。

string ReturnURlData = "hbhjbhjb hjbhjbhjb hjbhj <br/>vhbvhbhjjjbjjbhj jknknkjk

<form name=cart action='cart.asp'  önSubmit='return checkAllQuantities();' method=post> 

// --------我想从这里获取数据到

<tr>
    <td class="ROC_SellrCartRow">Menu18</td>
    <td class="ROC_SellrCartRow">Burger Quarter Pounder with Cheese</td>
    <td class="ROC_SellrCartRow"><input type=hidden id=Hidden5 value=0><input type=hidden id=6maxQuantity value=9999999><input type=hidden id=6minQuantity value=1><input type=hidden name=6basketitemid value=90265465><input class=ROC_quantityfield type=text  id=6quantity onClick='return ChangeAction(1);' onfocus='return ChangeAction(1);' onKeyUp='userChangedQuantity(6,false);' onChange='userChangedQuantity(6,true);' maxlength=6 size=3 name=6newquantity value=8></input></td>
    <td class="ROC_SellrCartRow">£23.20</td>
    </tr>

// -------- 到这里 (END)

<form> hjbhjbhjhjhbhjubhjuubhbhjubhjubu hbhjhuh  ";

我知道这是一项小任务,我可以分 3-4 步完成。但我想知道我们可以在单个查询中做到这一点。任何建议都非常感谢。

4

2 回答 2

1

您可以使用HTmlAgilityPack。它非常易于使用。这应该可以解决问题。

HtmlDocument doc = new HtmlDocument();
 doc.LoadHtml(t);

 HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//td[@class='ROC_SellrCartRow']");    

 string result;
 foreach (HtmlNode item in nodes) 
       result += item.InnerText;
于 2013-06-21T12:04:07.420 回答
1

嗨,你可以这样做:

string s = "Abc Pqr Xyz";
s = getBetween(s, "A", "z");

使用以下功能:

public static string getBetween(string strSource, string strStart, string strEnd)
{
 int Start, End;
if (strSource.Contains(strStart) && strSource.Contains(strEnd))
{
    Start = strSource.IndexOf(strStart, 0) + strStart.Length;
    End = strSource.IndexOf(strEnd, Start);
    return strSource.Substring(Start, End - Start);
}
else
{
    return "";
}

}

于 2013-06-21T12:04:34.483 回答