2010-06-01 91 views
0

我有這樣的HTML代碼正則表達式用vb.net

<div class="name"> 

<span id="businessNumOnMap2" class="resultNumberOnMap" style="display:none;">2</span> 

<span> 

<a href="/len/aapproximatch%20search/284096.php" onclick="loadBusinessInfo('1', '284096'); return false;" class="businessName">Bangsar Seafood Garden Restaurant</a></span><span id="phoneSpan1"></span> 

<script type="text/javascript"> 
var d=document.getElementById('phoneSpan1');d.innerHTML+='0';d.innerHTML+='3';d.innerHTML+=0?'8':'-';d.innerHTML+=1?'2':'1';d.innerHTML+='2';d.innerHTML+=1?'8':'1';d.innerHTML+=0?'0':'2';d.innerHTML+='2';d.innerHTML+=0?'4':'5';d.innerHTML+='5';d.innerHTML+=1?'5':'0'; 
</script> 

</div> 

我開始我的正則表達式與此:<div class="name"[^>]*>[\s\S]+?</div> 和我刪除HTML。即時通訊使用這樣的:<[^>]*>

的放出來是怎麼過的,孟沙海鮮花園餐廳<script type = "text/javascript"> ...</script><div>

一個,我想是在孟沙海鮮花園Restaurant..can誰能幫助我?

+1

[不要使用正則表達式來解析HTML!](http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454) – 2010-06-01 04:24:22

+0

找到正則表達式..它更好地爲我使用(?= ),而不是使用「div class ='name」「 – akmalizhar 2010-06-01 05:06:17

回答

0

如果你只想要的是商業名稱,你不能只是做一個class="businessName"的文本搜索,然後把下一個><之間的一切。如果HTML發生變化,它可能無法正常工作,但您使用正則表達式運行相同的風險。

+0

thnks ..它工作只是完美..我可以問一些問題?? ..如何使我的應用程序靈活??如何確保我使用的代碼仍然可以使用,儘管HTML代碼更改? – akmalizhar 2010-06-01 08:25:41

+0

@akmalizhar - 沒有問題。您不能真正使它在任何時候工作,除非您可以限制但是,如果您需要繼續使用HTML,您可能需要查看HTMLAgilityPack,但我從來沒有使用過它,但我已經看到它建議fo r解析HTML。 – 2010-06-01 08:58:08