由于对正则表达式不熟悉,现在想要提取html的字符。请大家帮帮忙,谢谢!Html的代码:
 string divHtml = "<div id=\"rightprodcolumn\">\n              \n              <h3 style=\"margin: 0px 60px 10px 40px; line-height: 25px; height: auto;\">\n              B22457<br />\n              Tris(trimethylsilyl)silane, 97%\n              <br />三(三甲硅烷基)硅烷, 97%&nbsp;&nbsp;<span lang=\"Y\" key=\"zh_disclaimer\">Chinese is provided solely as a courtesy</span>\n              \n              </h3>\n              \n              <table>\n          \t\t<tr>\n          \t\t\t<th style=\"width:55px;\"><span lang=\"Y\" key=\"CAS\">CAS:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">1873-77-4</td><td style=\"width:50px;\">&nbsp;</td><th style=\"width:55px;\"><span lang=\"Y\" key=\"MDL\">MDL:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">MFCD00077893</td>\r\n\t\t\t<td style=\"width:50px;\">&nbsp;</td><th style=\"width:70px;\"><span lang=\"Y\" key=\"EINECS\">EINECS:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">000-000-0</td>\n          \t\t</tr>\n          \t\t<tr>\n          \t\t\t<th><span lang=\"Y\" key=\"UN_\">UN#:</span></th><td>UN1993</td><td></td><th><span lang=\"Y\" key=\"hazard_class\">Hazard Class:</span></th><td>3</td><td></td><th><span lang=\"Y\" key=\"packing_group\">Packing Group:</span></th><td>II</td>\n          \t\t</tr>\n          \t\t<tr>\r\n\t\t\t          \t\t\t<th colspan=\"2\">\r\n\t          \t\t\t\t\t\t<span lang=\"Y\" key=\"alternate_name\">Alternate Name:</span>\r\n\t\t\t          \t\t\t</th>\r\n\t\t\t          \t\t\t<td colspan=\"6\">TTMSS</td>\r\n\t\t\t          \t\t</tr>\n          \t</table>\n              \n              <div class=\"boxred\" id=\"restriction\" style=\"display:none;\">\n                <div class=\"h3like\"></div>\n              </div>\n              <br />\n              \n              <div class=\"box pricebox\" id=\"B22457\">\r\n          \t\t<div class=\"msgbox\">&nbsp;</div>\r\n          \t\t<h4><span lang=\"Y\" key=\"pricing_availibility\">Pricing and Availability</span></h4>\r\n          \t\t<table class=\"pricetable\"><tr>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"Size\">Size</span></th>\r\n          \t\t\t\t<th style=\"width:85px\" class=\"txtright\">(&yen;) <span lang=\"Y\" key=\"dollarprice\">Price</span></th>\r\n          \t\t\t\t<th style=\"width:90px\" class=\"yourprice txtright\"><span lang=\"Y\" key=\"your_price\">Your Price</span></th>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"quantity\">Quantity</span></th>\r\n          \t\t\t\t<th style=\"width:70px;text-align:center;\"><span lang=\"Y\" key=\"options\">Options</span></th>\r\n          \t\t\t\t<th style=\"width:250px;\"><span lang=\"Y\" key=\"availibility_mmddyy\">Availability</span></th>\r\n          \t\t\t\t<th></th>\r\n          \t\t\t</tr>\t\t\t<tr>\n          \t\t<td>1g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">308.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--308.00-->\n          \t\t\t       308.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"03\" sizedesc=\"1g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav03\" onclick=\"addfav('B22457','03'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>5g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">928.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--928.00-->\n          \t\t\t       928.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"06\" sizedesc=\"5g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav06\" onclick=\"addfav('B22457','06'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>25g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">3,944.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--3,944.00-->\n          \t\t\t     3,944.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"14\" sizedesc=\"25g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav14\" onclick=\"addfav('B22457','14'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n<tr class=\"addtolink\">\r\n          \t\t\t\t\t<td colspan=\"7\">\r\n          \t\t\t\t\t\t<input type=\"image\" src=\"images/Add-Cart.gif\" name=\"addtocart\" onclick=\"addcart('B22457');\" alt=\"\" alttxt=\"addtocartbtn\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_cart\" class=\"addtocartbtn hideit noprint\">Add to Cart</span>\t<input type=\"image\" src=\"images/Bulk-Quote.gif\" name=\"addtobulk\" alttxt=\"addtobulkbtn\" onclick=\"addbulk('B22457');\" alt=\"\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_bulk\" class=\"addtobulkbtn hideit noprint\">Add to Bulk Quote</span>\r\n          \t\t\t\t\t</td>\r\n   \t       \t\t\t\t</tr>\r\n\t          \t\t</table>\r\n\t          \t\t<br />\r\n\t          \t</div>\r\n\t          \t<br />\n              \n              \n  </div>";1.需要提取出div id="rightprodcolumn" 中的h3, 得到字符“\n              B22457<br />\n              Tris(trimethylsilyl)silane, 97%\n              <br />三(三甲硅烷基)硅烷, 97%&nbsp;&nbsp;<span lang=\"Y\" key=\"zh_disclaimer\">Chinese is provided solely as a courtesy</span>\n              \n”  2.需要提取出div id="rightprodcolumn" 中的第一个table的tr的第一个td,得到字符“1873-77-4”。3.需要提取出div id="rightprodcolumn" 中的第一个table的tr的第三个td,得到字符“MFCD00077893”。4.需要提取出div id="rightprodcolumn" 中的 table class="pricetable"中没有class或class不等于‘addtolink’的tr的td[1],td[2]的size和price.我已经通过Xpath可以提取想要的数据,但是由于Html转换成XML效率较低。因为数据量大,想通过正则来提取,效率应该提高很多。

解决方案 »

  1.   

    需要提取Html:
    string divHtml = "<div id=\"rightprodcolumn\">\n              \n              <h3 style=\"margin: 0px 60px 10px 40px; line-height: 25px; height: auto;\">\n              B22457<br />\n              Tris(trimethylsilyl)silane, 97%\n              <br />三(三甲硅烷基)硅烷, 97%&nbsp;&nbsp;<span lang=\"Y\" key=\"zh_disclaimer\">Chinese is provided solely as a courtesy</span>\n              \n              </h3>\n              \n              <table>\n          \t\t<tr>\n          \t\t\t<th style=\"width:55px;\"><span lang=\"Y\" key=\"CAS\">CAS:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">1873-77-4</td><td style=\"width:50px;\">&nbsp;</td><th style=\"width:55px;\"><span lang=\"Y\" key=\"MDL\">MDL:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">MFCD00077893</td>\r\n\t\t\t<td style=\"width:50px;\">&nbsp;</td><th style=\"width:70px;\"><span lang=\"Y\" key=\"EINECS\">EINECS:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">000-000-0</td>\n          \t\t</tr>\n          \t\t<tr>\n          \t\t\t<th><span lang=\"Y\" key=\"UN_\">UN#:</span></th><td>UN1993</td><td></td><th><span lang=\"Y\" key=\"hazard_class\">Hazard Class:</span></th><td>3</td><td></td><th><span lang=\"Y\" key=\"packing_group\">Packing Group:</span></th><td>II</td>\n          \t\t</tr>\n          \t\t<tr>\r\n\t\t\t          \t\t\t<th colspan=\"2\">\r\n\t          \t\t\t\t\t\t<span lang=\"Y\" key=\"alternate_name\">Alternate Name:</span>\r\n\t\t\t          \t\t\t</th>\r\n\t\t\t          \t\t\t<td colspan=\"6\">TTMSS</td>\r\n\t\t\t          \t\t</tr>\n          \t</table>\n              \n              <div class=\"boxred\" id=\"restriction\" style=\"display:none;\">\n                <div class=\"h3like\"></div>\n              </div>\n              <br />\n              \n              <div class=\"box pricebox\" id=\"B22457\">\r\n          \t\t<div class=\"msgbox\">&nbsp;</div>\r\n          \t\t<h4><span lang=\"Y\" key=\"pricing_availibility\">Pricing and Availability</span></h4>\r\n          \t\t<table class=\"pricetable\"><tr>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"Size\">Size</span></th>\r\n          \t\t\t\t<th style=\"width:85px\" class=\"txtright\">(&yen;) <span lang=\"Y\" key=\"dollarprice\">Price</span></th>\r\n          \t\t\t\t<th style=\"width:90px\" class=\"yourprice txtright\"><span lang=\"Y\" key=\"your_price\">Your Price</span></th>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"quantity\">Quantity</span></th>\r\n          \t\t\t\t<th style=\"width:70px;text-align:center;\"><span lang=\"Y\" key=\"options\">Options</span></th>\r\n          \t\t\t\t<th style=\"width:250px;\"><span lang=\"Y\" key=\"availibility_mmddyy\">Availability</span></th>\r\n          \t\t\t\t<th></th>\r\n          \t\t\t</tr>\t\t\t<tr>\n          \t\t<td>1g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">308.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--308.00-->\n          \t\t\t       308.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"03\" sizedesc=\"1g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav03\" onclick=\"addfav('B22457','03'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>5g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">928.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--928.00-->\n          \t\t\t       928.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"06\" sizedesc=\"5g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav06\" onclick=\"addfav('B22457','06'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>25g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">3,944.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--3,944.00-->\n          \t\t\t     3,944.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"14\" sizedesc=\"25g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav14\" onclick=\"addfav('B22457','14'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n<tr class=\"addtolink\">\r\n          \t\t\t\t\t<td colspan=\"7\">\r\n          \t\t\t\t\t\t<input type=\"image\" src=\"images/Add-Cart.gif\" name=\"addtocart\" onclick=\"addcart('B22457');\" alt=\"\" alttxt=\"addtocartbtn\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_cart\" class=\"addtocartbtn hideit noprint\">Add to Cart</span>\t<input type=\"image\" src=\"images/Bulk-Quote.gif\" name=\"addtobulk\" alttxt=\"addtobulkbtn\" onclick=\"addbulk('B22457');\" alt=\"\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_bulk\" class=\"addtobulkbtn hideit noprint\">Add to Bulk Quote</span>\r\n          \t\t\t\t\t</td>\r\n   \t       \t\t\t\t</tr>\r\n\t          \t\t</table>\r\n\t          \t\t<br />\r\n\t          \t</div>\r\n\t          \t<br />\n              \n              \n  </div>";
      

  2.   


                string divHtml = "<div id=\"rightprodcolumn\">\n              \n              <h3 style=\"margin: 0px 60px 10px 40px; line-height: 25px; height: auto;\">"
                    + "\n              B22457<br />\n              Tris(trimethylsilyl)silane, 97%\n              <br />三(三甲硅烷基)硅烷, 97%&nbsp;&nbsp;"
                    + "<span lang=\"Y\" key=\"zh_disclaimer\">Chinese is provided solely as a courtesy</span>\n              \n              </h3>"
                    + "\n              \n              <table>\n          \t\t<tr>\n          \t\t\t<th style=\"width:55px;\"><span lang=\"Y\" key=\"CAS\">CAS:</span>"
                    + "</th>\r\n\t\t\t\t<td style=\"width:125px;\">1873-77-4</td><td style=\"width:50px;\">&nbsp;</td><th style=\"width:55px;\">"
                    + "<span lang=\"Y\" key=\"MDL\">MDL:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">MFCD00077893</td>\r\n\t\t\t<td style=\"width:50px;\">&nbsp;</td>"
                    + "<th style=\"width:70px;\"><span lang=\"Y\" key=\"EINECS\">EINECS:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">000-000-0</td>"
                    + "\n          \t\t</tr>\n          \t\t<tr>\n          \t\t\t<th><span lang=\"Y\" key=\"UN_\">UN#:</span></th><td>UN1993</td><td></td>"
                    + "<th><span lang=\"Y\" key=\"hazard_class\">Hazard Class:</span></th><td>3</td><td></td><th><span lang=\"Y\" key=\"packing_group\">Packing Group:</span></th><td>II</td>\n          \t\t</tr>\n          \t\t<tr>\r\n\t\t\t          \t\t\t<th colspan=\"2\">\r\n\t          \t\t\t\t\t\t<span lang=\"Y\" key=\"alternate_name\">Alternate Name:</span>\r\n\t\t\t          \t\t\t</th>\r\n\t\t\t          \t\t\t<td colspan=\"6\">TTMSS</td>\r\n\t\t\t          \t\t</tr>\n          \t</table>\n              \n              <div class=\"boxred\" id=\"restriction\" style=\"display:none;\">\n                <div class=\"h3like\"></div>\n              </div>\n              <br />\n              \n              <div class=\"box pricebox\" id=\"B22457\">\r\n          \t\t<div class=\"msgbox\">&nbsp;</div>\r\n          \t\t<h4><span lang=\"Y\" key=\"pricing_availibility\">Pricing and Availability</span></h4>\r\n          \t\t<table class=\"pricetable\"><tr>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"Size\">Size</span></th>\r\n          \t\t\t\t<th style=\"width:85px\" class=\"txtright\">(&yen;) <span lang=\"Y\" key=\"dollarprice\">Price</span></th>\r\n          \t\t\t\t<th style=\"width:90px\" class=\"yourprice txtright\"><span lang=\"Y\" key=\"your_price\">Your Price</span></th>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"quantity\">Quantity</span></th>\r\n          \t\t\t\t<th style=\"width:70px;text-align:center;\"><span lang=\"Y\" key=\"options\">Options</span></th>\r\n          \t\t\t\t<th style=\"width:250px;\"><span lang=\"Y\" key=\"availibility_mmddyy\">Availability</span></th>\r\n          \t\t\t\t<th></th>\r\n          \t\t\t</tr>\t\t\t<tr>\n          \t\t<td>1g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">308.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--308.00-->\n          \t\t\t       308.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"03\" sizedesc=\"1g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav03\" onclick=\"addfav('B22457','03'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>5g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">928.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--928.00-->\n          \t\t\t       928.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"06\" sizedesc=\"5g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav06\" onclick=\"addfav('B22457','06'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>25g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">3,944.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--3,944.00-->\n          \t\t\t     3,944.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"14\" sizedesc=\"25g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav14\" onclick=\"addfav('B22457','14'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n<tr class=\"addtolink\">\r\n          \t\t\t\t\t<td colspan=\"7\">\r\n          \t\t\t\t\t\t<input type=\"image\" src=\"images/Add-Cart.gif\" name=\"addtocart\" onclick=\"addcart('B22457');\" alt=\"\" alttxt=\"addtocartbtn\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_cart\" class=\"addtocartbtn hideit noprint\">Add to Cart</span>\t<input type=\"image\" src=\"images/Bulk-Quote.gif\" name=\"addtobulk\" alttxt=\"addtobulkbtn\" onclick=\"addbulk('B22457');\" alt=\"\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_bulk\" class=\"addtobulkbtn hideit noprint\">Add to Bulk Quote</span>\r\n          \t\t\t\t\t</td>\r\n   \t       \t\t\t\t</tr>\r\n\t          \t\t</table>\r\n\t          \t\t<br />\r\n\t          \t</div>\r\n\t          \t<br />\n              \n              \n  </div>";            Regex reg = new Regex(@"(?is)(?<=<div\s*id=""rightprodcolumn""\s*>(?:(?!</?div).)*)<h3[^>]*?>(.*?)</h3>");
                foreach (Match m in reg.Matches(divHtml))
                    Console.WriteLine(m.Groups[1].Value);
                Regex reg1 = new Regex(@"(?is)<div\s*id=""rightprodcolumn""\s*>.*?<td[^>]*?>(.*?)</td>.*?</div>");
                foreach (Match m in reg1.Matches(divHtml))
                    Console.WriteLine(m.Groups[1].Value);
                Regex reg2 = new Regex(@"(?is)<div\s*id=""rightprodcolumn""\s*>(?:.*?<td[^>]*?>.*?</td>){2}.*?<td[^>]*?>(.*?)</td>.*?</div>");
                foreach (Match m in reg2.Matches(divHtml))
                    Console.WriteLine(m.Groups[1].Value);
    //第4个的size,price不知道指的是什么。
      

  3.   

    4.需要提取出div id="rightprodcolumn" 中的 table class="pricetable"中没有class或class不等于‘addtolink’的tr的td[1],td[2]中内容,如:<td>1g</td>中1g就是Siz,<td class=\"txtright\">308.00</td>中308.00就是price。谢谢huangwenquan123的帮助。
      

  4.   

    用DOM对象,或者jquery,不是很好吗,干吗要用正则表达式
      

  5.   

    关于用HttpRequest得到的字符串,用不了jQuery。可以XML的xpath来提取,但是过长Html转换成XML,效率很低。
    最后一个问题就是得到table class="pricetable"的tr,tr的class不等于‘addtolink’,取得tr中td[1],td[2]的内容。自己来试试。
      

  6.   

    刚看错问题了,还以为是table的class不是addtolink的,原来是tr的class不是那个            string divHtml = "<div id=\"rightprodcolumn\">\n              \n              <h3 style=\"margin: 0px 60px 10px 40px; line-height: 25px; height: auto;\">"
                    + "\n              B22457<br />\n              Tris(trimethylsilyl)silane, 97%\n              <br />三(三甲硅烷基)硅烷, 97%&nbsp;&nbsp;"
                    + "<span lang=\"Y\" key=\"zh_disclaimer\">Chinese is provided solely as a courtesy</span>\n              \n              </h3>"
                    + "\n              \n              <table>\n          \t\t<tr>\n          \t\t\t<th style=\"width:55px;\"><span lang=\"Y\" key=\"CAS\">CAS:</span>"
                    + "</th>\r\n\t\t\t\t<td style=\"width:125px;\">1873-77-4</td><td style=\"width:50px;\">&nbsp;</td><th style=\"width:55px;\">"
                    + "<span lang=\"Y\" key=\"MDL\">MDL:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">MFCD00077893</td>\r\n\t\t\t<td style=\"width:50px;\">&nbsp;</td>"
                    + "<th style=\"width:70px;\"><span lang=\"Y\" key=\"EINECS\">EINECS:</span></th>\r\n\t\t\t\t<td style=\"width:125px;\">000-000-0</td>"
                    + "\n          \t\t</tr>\n          \t\t<tr>\n          \t\t\t<th><span lang=\"Y\" key=\"UN_\">UN#:</span></th><td>UN1993</td><td></td>"
                    + "<th><span lang=\"Y\" key=\"hazard_class\">Hazard Class:</span></th><td>3</td><td></td><th><span lang=\"Y\" key=\"packing_group\">Packing Group:</span></th><td>II</td>\n          \t\t</tr>\n          \t\t<tr>\r\n\t\t\t          \t\t\t<th colspan=\"2\">\r\n\t          \t\t\t\t\t\t<span lang=\"Y\" key=\"alternate_name\">Alternate Name:</span>\r\n\t\t\t          \t\t\t</th>\r\n\t\t\t          \t\t\t<td colspan=\"6\">TTMSS</td>\r\n\t\t\t          \t\t</tr>\n          \t</table>\n              \n              <div class=\"boxred\" id=\"restriction\" style=\"display:none;\">\n                <div class=\"h3like\"></div>\n              </div>\n              <br />\n              \n              <div class=\"box pricebox\" id=\"B22457\">\r\n          \t\t<div class=\"msgbox\">&nbsp;</div>\r\n          \t\t<h4><span lang=\"Y\" key=\"pricing_availibility\">Pricing and Availability</span></h4>\r\n          \t\t<table class=\"pricetable\"><tr>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"Size\">Size</span></th>\r\n          \t\t\t\t<th style=\"width:85px\" class=\"txtright\">(&yen;) <span lang=\"Y\" key=\"dollarprice\">Price</span></th>\r\n          \t\t\t\t<th style=\"width:90px\" class=\"yourprice txtright\"><span lang=\"Y\" key=\"your_price\">Your Price</span></th>\r\n          \t\t\t\t<th style=\"width:50px\"><span lang=\"Y\" key=\"quantity\">Quantity</span></th>\r\n          \t\t\t\t<th style=\"width:70px;text-align:center;\"><span lang=\"Y\" key=\"options\">Options</span></th>\r\n          \t\t\t\t<th style=\"width:250px;\"><span lang=\"Y\" key=\"availibility_mmddyy\">Availability</span></th>\r\n          \t\t\t\t<th></th>\r\n          \t\t\t</tr>\t\t\t<tr>\n          \t\t<td>1g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">308.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--308.00-->\n          \t\t\t       308.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"03\" sizedesc=\"1g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav03\" onclick=\"addfav('B22457','03'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>5g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">928.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--928.00-->\n          \t\t\t       928.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"06\" sizedesc=\"5g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav06\" onclick=\"addfav('B22457','06'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n\t\t\t<tr>\n          \t\t<td>25g</td>\n          \t\t<!-- JRD 20100915 - enable Korea including no decimals\n          \t\t <td class=\"txtright\">3,944.00</td>-->\n          \t\t<td class=\"txtright\">\n          \t\t\t<!--3,944.00-->\n          \t\t\t     3,944.00\n          \t\t</td>\n          \t\t<td class=\"txtright\">\n          \t\t\t\n          \t\t</td>\n          \t\t<td><input type=\"text\" name=\"qty\" sizeid=\"14\" sizedesc=\"25g\" value=\"\" size=\"3\" class=\"qtyfield\" maxlength=\"6\" /></td>\n          \t\t<td class=\"txtcenter\">\n          \t\t\t<a href=\"#\" onclick=\"checkavail(this, 'B22457'); return false;\">\r\n\t\t\t          \t\t\t\t<img src=\"/images/icon/Check-Availability.gif\" style=\"width:16px;\" alttxt=\"imgchkavail\" alt=\"\" title=\"\" />\r\n\t\t\t          \t\t\t\t<span lang=\"Y\" key=\"Check_availibility\" class=\"hideit imgchkavail noprint\">Check Availability</span>\r\n\t\t\t          \t\t\t</a><a href=\"#\" id=\"fav14\" onclick=\"addfav('B22457','14'); return false;\">\r\n\t\t\t\t\t\t\t\t\t\t<img src=\"/images/icon/Favorites.gif\" style=\"width:16px;\" alttxt=\"imgfavs\" />\r\n\t\t\t\t\t\t\t\t\t\t<span lang=\"Y\" key=\"Add_to_Favorites\" class=\"hideit imgfavs noprint\">Add to Favorites</span>\r\n\t\t\t\t          \t\t\t</a>\n          \t\t\t\n          \t\t\t\n          \t\t</td>\n          \t\t<td style=\"width:200px\" class=\"availibility\">\n          \t\t\t<span lang=\"Y\" key=\"enter_qty_and_click\">Enter qty and click checkbox</span>\n          \t\t</td>\n          \t\t\n          \t\t<td>\n          \t\t\t<input type=\"hidden\" name=\"restr_msg\" value=\"\" />\n          \t\t</td>\n          \t</tr>\n"
                    +"<tr class=\"addtolink\">\r\n          \t\t\t\t\t<td colspan=\"7\">\r\n          \t\t\t\t\t\t<input type=\"image\" src=\"images/Add-Cart.gif\" name=\"addtocart\" onclick=\"addcart('B22457');\" alt=\"\" alttxt=\"addtocartbtn\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_cart\" class=\"addtocartbtn hideit noprint\">Add to Cart</span>\t<input type=\"image\" src=\"images/Bulk-Quote.gif\" name=\"addtobulk\" alttxt=\"addtobulkbtn\" onclick=\"addbulk('B22457');\" alt=\"\" />\t\r\n          \t\t\t\t\t\t<span lang=\"Y\" key=\"add_to_bulk\" class=\"addtobulkbtn hideit noprint\">Add to Bulk Quote</span>\r\n          \t\t\t\t\t</td>\r\n   \t       \t\t\t\t</tr>\r\n\t          \t\t</table>\r\n\t          \t\t<br />\r\n\t          \t</div>\r\n\t          \t<br />\n              \n              \n  </div>";            Regex reg = new Regex(@"(?is)(?<=<table[^>]*?class=""pricetable""[^>]*?>(?:(?!</?table).)*)<tr\s*(?:class=""(?:(?!addtolink).)*"")?>(?:.*?<td[^>]*?>(.*?)</td>){2}.*?</tr>");
                foreach (Match m in reg.Matches(divHtml))
                    foreach (Capture c in m.Groups[1].Captures)
                        Console.WriteLine(c.Value);
      

  7.   


    对的,就是我想要的效果。谢谢你啊,huangwenquan123! 结贴了,huangwenquan123加我MSN: [email protected] 交个朋友。