2012-07-06 81 views

回答

1

與空字符串<[]>.*?</[]> 替換正則表達式,並收集到[]所有包括標籤,例如<[mas]>.*?</[mas]>捕獲<m>anything</m><a>anything</a><s>anything</s>

1

笑話除了this,不要試圖用正則表達式解析HTML,可以使用HTML解析器。它會讓你的生活變得輕鬆。

谷歌的東西或在這裏搜索關於「HTML解析器」+您的語言的選擇。

+1

'......親愛的領主幫助我們如何能夠使用正則表達式來解決HTML ...這個禍害......「 , 我們完了! – KurzedMetal 2012-07-06 15:20:30

1

我不知道爲什麼其他答案認爲你需要解析HTML。你只需要替換一些模式而不是其他模式。所以你使用正則表達式替換的回調函數...

var keep = { 
    b: true, 
    i: true, 
    u: true, 
    br: true 
}; 

html.replace(/<\/?([a-z]+) ?[^>]*>/g, function(wholeMatch, tagName) 
{ 
    if (keep[tagName]) { 
     return wholeMatch; 
    } 

    return ''; 
}); 
+0

這個例子是區分大小寫的,並且可以修改以保留屬性,也取決於標籤。 – 2015-02-12 09:36:32