2011-11-18 87 views
2

我不能分析它,因爲它不是一個HTML文件,它是一個簡單的文本,有時它可以被隱藏的HTML標籤就像一個有效的開口:如何在非html文件中查找html標籤?

<a href="..." > 

也:

<anytag par1="val1" par2='val2' par3=val3 /> 

,一切都將是很好的和容易的,如果沒有這種可能性:

<anytag param='square <brackets> in value' par2="and < another < such case" > 

如何使用正則表達式匹配呢? (這是不是有效的HTML,標籤是(可能)在一個普通的txt文件中,並且是鬆散的,不包含在任何適當的結構中,並且並不總是關閉的。與>關閉,看例子),我不感興趣裏面是什麼標籤,但只有在打開頭)

+0

你應該看看http://stackoverflow.com/questions/590747/using-regular-expressions-to-parse-html-why-not並重新考慮解析HTML與正則表達式 –

+0

我不完全得到什麼你想要正則表達式匹配 - '標記名',在你的例子? – canavanin

+0

這些只是例子,可以有任何標籤。 – rsk82

回答

0

嘗試是這樣的:。

$regEx = "/(<[a-z A-Z]+(=\"[a-z A-z]\")*)+>/"; 

首先,它會檢查它是否包含1或更多<,那麼它會檢查它是否包含零個或多個az =「az」,然後是一個>。

+0

我也曾經不得不問別人正則表達式的東西,但後來我然後我發現它並不像看起來那麼難,知道它的工作原理非常方便,[]意思是「找到任何這些」。()意思是「在這裏找到所有東西」。 *表示「0或更多」,+表示「1或更多」,?表示「0或1」。意思是「任何字符」 祝你好運:) –

相關問題