我有從HTML代碼中提取字符串的問題(這基本上是正則表達式的問題)。 這裏是代碼:從字符串中提取值
string wheretosearch = @"
<td class=""name"">
<div>
<a href=""/addr1.html"" class=""link "">
<span>Title1</span>
</a></td>
[some code]
<td class=""name"">
<div>
<a href=""/addr2.html"" class=""link "">
<span>Title2</span>
</a></td>";
我想提取標籤之間的標題。什麼我的問題是,我不能把數量不明的字符的正則表達式(* TD類=「」名稱「」後一節。):
<td class=""name"">.*<span>(?<title>.*)</span>
爲了把事情簡單地說:我想正則表達式找到<td class=""name"">
然後在未知數字的字符發現第一次出現<span>
,然後取第一個<span>
和</span>
之間的值。
實際上,它需要最後一次出現<span>
,並且只給出最後一個標題。
編輯:
好了,除了HTML的問題,這個問題是這樣的: 我有串:
「這是一個文本:NICE這是一個偉大的文字:很好。「
我想用「This」取得未知數的字符,然後在「:」和「。」之間輸入字符串。如何做到這一點?
當然,我對這個複雜表達式的每一次出現都很感興趣,所以輸出結果在集合中是「NICE」和「NICE TOO」。
對於像"This.*(?<title>.*)."
這樣的表達式,我只能得到「NICE TOO」字符串,就像@urlreader提到的那樣,它會找到最大長度匹配的字符串。
咳咳... http://stackoverflow.com/questions/1732348/regex-match-open-tags -except-xhtml-self-contained-tags/1732454#1732454 – driis
使用正則表達式進行html解析不是一個好主意。對於敏捷包使用[Html Agility Pack](http://htmlagilitypack.codeplex.com/) – Steve
+1,效果相當不錯,幾乎吞噬了你扔向它的任何垃圾。 – flq