2016-01-26 48 views
0

我一直在這個問題上撞了太久。我目前的項目是通過HTML文件來抓取文件和搜索關鍵字。由於與此問題無關的原因,我無法使用simplephpdom庫。正則表達式與交疊

我需要從html標籤中刮掉單詞。所以,如果我在尋找stack 它不應該匹配<a class="stack"> test <a>它應該只標記 <a class="test"> stack <a>

內匹配我制定了以下的正則表達式(?:>[^><]*)keyword(?:[^><]*</) 此正則表達式的作品...但只有1關鍵字每個標籤中。在示例中以下將只抓取第一個stack並保釋:<h1> Stack is so awesome. Stack is here again</h1>

問題。如何在HTML標籤中搜索關鍵字。不抓取元數據或html數據。

+0

你應該用HTML解析器解析HTML。那麼,這是一個孩子的遊戲。 –

+0

我會,但文件是PHP,我不能解析。 – c3cris

回答

1

基於什麼被張貼,嘗試這種模式

(stack)(?![^<>]*>) 

Demo

+0

等一下...請回答我這個。可以lookaheads有正則表達式嗎?因爲我認爲lookaround只是文字,還是僅僅是看起來像? – c3cris

+1

環視可能有正則表達式模式,對於大多數引擎而言,後視必須是固定寬度,但可以是正則表達式。 –