我想匹配來自HTML源的特定跨度標籤。正則表達式 - 貪婪 - 匹配HTML標籤,內容和屬性
標記的lang-attribute和內部HTML用作返回新字符串的函數的參數。
我想用被調用函數的結果替換舊的標籤,屬性和內容。
受試者將是這樣的:
<p>Some codesnippet:</p>
<span lang="fsharp">// PE001
let p001 = [0..999]
|> List.filter (fun n -> n % 3 = 0 || n % 5 = 0)
|> List.sum
</span>
<p>Another code snippet:</p>
<span lang="C#">//C# testclass
class MyClass {
}
</span>
爲了提取lang屬性的值和所述內容,我基團與下式的那些值:
由於正則表達式往往是貪婪的,這個表達式匹配完整的主題,而不僅僅是一個span標籤及其內容。
我如何設法匹配一個跨度標籤?
對於操縱html標記,你最好使用正確的工具進行工作。 PHP爲您提供了DOMDocument,它是爲任務而構建的。 Tehre也是XMLReader和SimpleXML。雖然他們不太合適,但他們仍然可以很好地處理XHTML。 – GordonM 2011-03-11 12:09:39
我認爲你需要備份一個步驟,並問,這是一個明智的使用'lang'屬性嗎?*或者,*我應該試圖嵌入HTML代碼這樣?* – 2011-03-11 12:46:15
這意味着你有更好的解決任務的想法 - 請解釋並分享你的想法! :) – fjdumont 2011-03-14 08:16:56