2012-09-21 79 views
0

可能重複不匹配字:
RegEx match open tags except XHTML self-contained tags正規快件在A HREF

比方說,我想這個詞匹配字符串「谷歌」,但有時該字符串包含一個鏈接(<a href="http://www.google.com">google</a>)但我只想匹配,如果它不是一個鏈接。

我該如何檢查字詞前是否有<a href="http://www.google.com">

+0

有一些樂趣http://stackoverflow.com/a/1732454/876211 – Gabber

+3

我建議我們不應鏈接到http://stackoverflow.com/a/1732454/876211在這種情況下。理解它的唯一的人是*已經理解的人*爲什麼用正則表達式解析HTML是不理想的。對於新手來說,這是沒有意義的。我可以使用一些幫助將內容添加到http://htmlparsing.com,在那裏我們可以*向新手解釋*,他們明白爲什麼他們不應該使用正則表達式來解析HTML。我已經有很多反例:http://htmlparsing.com/regexes.html –

+1

同意,@Andy,答案對於想要從HTML中提取信息的新手沒有幫助,但還有其他幾種解釋和有用的答案在同一個問題。我們可以將這些問題計爲在那裏回答,即使這不是所接受的答案。 –

回答

7

最準確的方法是:

  • 解析字符串作爲HTML
  • 搜索無論是不是字符串「谷歌」的標籤。

您不想嘗試使用正則表達式解析HTML。從長遠來看,這會讓你難過。請參考http://htmlparsing.com/瞭解一些可以幫助您開始的指針。

+2

@Undefined現在有人正在研究一個正則表達式,它會通過你的特定測試用例,但是當你嘗試在真實世界中應用它時,會因爲許多原因而失敗。這個答案是一個更好的方法。 – chucksmash

+0

好的,謝謝=) – Undefined