0
我嘗試替換代碼片段中的一些HTML標記。例如。 span-element是在沒有id的情況下進行替換,但是當它有一個id時不會進行替換。正則表達式在html標記中的捕獲詞
這裏是我的方法:
var sHTML = 'Text abc <span> text def ';
sHTML = sHTML.replace(/<\s*\/*\s*span(.[^(id\=)]*){0,1}?>/ig, '');
alert(sHTML);
它的工作原理錯了!因爲當「id =」發生時它不能被替換,但是如果發生像「i」或「d」或「=」這樣的單個字符,它不應該有任何區別,並且它必須被替換。 換句話說,我期待: var sHTML = 'Text abc <span id=MyId > text def ';
什麼都不是,因爲span-element有一個id,所以它應該保持原樣,如下所示:Text abc <span id=MyId > text def
。
但var sHTML = 'Text abc <span style="color:#00ff00;" > text def ';
它來代替,因爲跨度元素沒有ID如下:Text abc text def
。
有什麼想法?提前致謝。
是的,它是!謝謝。 – user3815508 2015-02-06 11:02:26