2012-01-16 104 views
1

我想從TextField生成的htmlText字符串中移除字體標籤,使周圍的節點和任何粗體等標籤完好無損。從htmlText中移除字體標籤

例的htmlText的部分輸出:

<P ALIGN="LEFT"><FONT FACE="ChampagneLimo" SIZE="18" COLOR="#000000" LETTERSPACING="0" KERNING="0">Lorem Ipsum</FONT></P> 

我的計劃是,以避免試圖用正則表達式的東西,並創建一個XML對象。

但是如果我創建一個包含一個根節點一個新的XML對象,然後嘗試使用appendChild將htmlText繩子,讓我有一個有效的XML對象來操作我運行與HTML實體問題,請參見下面的例子:

<html>&lt;P ALIGN="LEFT"&gt;&lt;FONT FACE="... 

字體標籤如何從htmlText中剝離,以及如何從htmlText字符串中創建有效的XML對象?我的計劃是使用XML替換()方法,但我願意接受建議。

回答

2

<html>標籤只是添加到字符串,而不是創建一個額外的節點:

var xml : XML = new XML ("<html>"+ myTextField.htmlText + "</html>"); 

您也可以使用正則表達式來刪除字體標籤:

var reg:RegExp = /\<\/?FONT.*?\/?\>/gi; 
// matches all <FONT> start and end tags 
// (case-insensitive), along with any attributes 
var myHtmlText:String = myTextField.htmlText.replace (reg, "");