2011-12-15 20 views
0

AS 3.0 /閃存actionscript htmltext。從動態HTML文本刪除表標籤

  1. 我消耗XML這是我無法控制的。
  2. XML中有HTML,它是我在HTML文本字段中定義和顯示的。
  3. 我想刪除除鏈接以外的所有html。

Strip all HTML tags except links 對我不起作用。

確實有任何提示嗎?正則表達式?

以下刪除表。 var reTable:RegExp = /<table\s+[^>]*>.*?<\/table>/s;

但現在我意識到我需要保持內容是表格,我也需要鏈接。

謝謝!!!

CP

+0

你不需要從你的HTML中刪除一些東西。只需將其格式化爲代碼==>打算增加4個空格,或者標記代碼並使用代碼格式按鈕或按下「Ctrl + k」 – stema 2011-12-15 21:44:21

+0

我添加了格式和括號。 – weltraumpirat 2011-12-15 22:21:51

回答

0

可能不應該使用正則表達式來解析HTML,但如果你不關心,簡單的東西是這樣的:

找到/<table\s+[^>]*>.*?<\/table\s+>/
替換 「」

0

ActionScript中有非常漂亮的工具來處理XML:E4X。而不是依賴於正則表達式,我覺得這往往食堂的東西了XML,只需修改實際的XML樹,並從內部AS:

var xml : XML = <page> 
        <p>Other elements</p> 
        <table><tr><td>1</td></tr></table> 
        <p>won't</p> 
        <div> 
         <table><tr><td>2</td></tr></table> 
        </div> 
        <p>be</p> 
        <table><tr><td>3</td></tr></table> 
        <p>removed</p> 
        <table><tr><td>4</td></tr></table> 
      </page>; 

clearTables (xml); 

trace (xml.toXMLString()); // will output everything but the tables 

function removeTables (xml : XML) : void { 
    xml.replace("table", ""); 
    for each (var child:XML in xml.elements("*")) clearTables(child); 
}