我對正則表達式不太擅長,所以我正在尋求幫助。如何刪除除粗體,斜體,下劃線和新行之外的所有html標記?
我想知道什麼是正則表達式除去以下所有的html標籤。
- 大膽
- 斜體
- 下劃線
- 新線
謝謝你們。希望你能幫助我解決這個問題。
我對正則表達式不太擅長,所以我正在尋求幫助。如何刪除除粗體,斜體,下劃線和新行之外的所有html標記?
我想知道什麼是正則表達式除去以下所有的html標籤。
謝謝你們。希望你能幫助我解決這個問題。
與空字符串<[]>.*?</[]>
替換正則表達式,並收集到[]
所有包括標籤,例如<[mas]>.*?</[mas]>
捕獲<m>anything</m>
<a>anything</a>
<s>anything</s>
笑話除了this,不要試圖用正則表達式解析HTML,可以使用HTML解析器。它會讓你的生活變得輕鬆。
谷歌的東西或在這裏搜索關於「HTML解析器」+您的語言的選擇。
'......親愛的領主幫助我們如何能夠使用正則表達式來解決HTML ...這個禍害......「 , 我們完了! – KurzedMetal 2012-07-06 15:20:30
我不知道爲什麼其他答案認爲你需要解析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 '';
});
這個例子是區分大小寫的,並且可以修改以保留屬性,也取決於標籤。 – 2015-02-12 09:36:32
歡迎來到SO。這裏有一個非常流行的答案,像這樣的問題:http://stackoverflow.com/a/1732454/1046610 – rcdmk 2012-07-06 15:14:36