[英]C#: Regex match closest
<table class="listProvision" class="itable">
<tr>
<td class="whatever">some infos</td>
<td>some more infos</td>
<td>13908402</td>
<td>hello world</td>
</tr>
<tr>
<td class="whatever">some infos</td>
<td>some more infos</td>
<td id="num">13908402</td>
<td>hello world</td>
</tr>
</table>
給定以上示例HTML, 我如何正確地解析具有類listProvision
的table
之間所有<tr>...</tr>
存在 ?
我試過了: <table.*?listProvision.*?>(?:.*?<tr.*?>(.*?)</tr>)+.*?</table>
,但是我不知道找出問題所在。 永遠不會有任何復雜的html放入此正則表達式中,因此不必擔心。
這是如何使用HTML Agility Pack解析html字符串的示例
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
var rows = doc.DocumentNode
.SelectNodes("//table[@class='listProvision']/tr");
然后,您可以使用HtmlNode.InnerHtml
屬性獲取<tr>...</tr>
標記之間的所有數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.