2010-01-18 55 views
1

我需要對html字符串進行排序,以便獲取我需要的內容。現在我需要在具有ID的表格中遍歷表格行。我如何用正則表達式來做到這一點?如何使用ID與正則表達式從表中獲取內容?

+1

看到http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self- contained-tags/1732454#1732454 – Manu 2010-01-18 10:04:39

回答

1

正則表達式不能用於解析HTML; HTML不規則。使用適當的HTML解析器庫。

+0

你有什麼建議嗎?我使用asp.net c# – 2010-01-18 09:57:02

+0

不。 http://stackoverflow.com/questions/100358/looking-for-c-html-parser – 2010-01-18 10:00:34

1

這取決於HTML文本的規則。例如,假設此表:

<table> 
    <tr><td>1</td><td>Apple</td></tr> 
    <tr><td>2</td><td>Ball</td></tr> 
    <tr><td>3</td><td>Cookie</td></tr> 
<table> 

下面的正則表達式表達式查找的ID在第一列:

(?<=<tr><td>).*?(?=</td>) 
0

如果運行通過像BeautifulSoup一個HTML解析器的頁面,那麼你可以美化它使這種正則表達式有機會。但是,如果你解析反正HTML ...

0

試試這個

Dim HTML As String = contentText 
Dim options As RegexOptions = RegexOptions.IgnoreCase Or RegexOptions.Singleline 
Dim regex As Regex = New Regex("<table[^>]*>(.*)</table>", options) 
Dim match As MatchCollection = regex.Matches(HTML) 
Dim sb As StringBuilder = New StringBuilder 
For Each items As Match In match 
    sb.Append(items.ToString & vbLf) 
Next 
TextBox.Text = sb.ToString 
相關問題