2011-02-24 43 views
1

我有一個包含英文和阿拉伯文文本的html文件。我需要從文件中刪除所有阿拉伯語文本。從html文件中刪除具有特定屬性值的標記所包含的文本

我觀察到所有的烏爾都語文本來一個<p>內或<div>標籤與屬性style="direction: rtl;"這使得阿拉伯文字顯示從右到左。

剝離例如:

<P style="direction:rtl"> 
<SPAN style="font-family:'serif'>Arabic Text: ������������</SPAN> 
</P> 

所以,我需要找到所有與該屬性style="direction:rtl"標籤塊(我不知道很多的HTML,我不是很確定它被稱爲一個屬性)和刪除他們。試過Aptana Studio,但我發現它也無法完成這項工作(請告訴我,如果我錯過了一個技巧)。

我試圖用Firebug做,但無法弄清楚(以前從未使用過)。

那麼這可以用Firebug完成嗎?或者,有沒有一個HTML編輯器能讓我搜索並列出具有特定標記或屬性值的塊?

任何幫助將不勝感激。

+0

這個文件有多大?你是否需要通過js或服務器端進行實時操作,或者只需要在任何文本編輯器中查找/替換就可以做到這一點? – 2011-02-24 12:17:26

+0

該文件大約800kb,其中一半是阿拉伯文。有五個這樣的文件。我不需要隨時做,我只需要英文文本(一次性提取)。普通的查找/替換不會,因爲我需要刪除那些包含在p和div標籤中的文本。 – Soumendra 2011-02-24 15:10:08

回答

1

有各種方法可以做到這一點;如果這是一個持續的操作,一個Python程序可能是最好的。

但是,因爲這是一個Firebug的問題,說成是一次性操作,這裏是如何使用Firebug jQuery做到這一點:

  1. 製作原始文件的備份副本。

  2. 在Firefox中打開文件。

  3. 如果使用noscript或類似方法,請確保爲本地文件臨時啓用JavaScript。

  4. 打開Firebug控制檯。

  5. 如果控制檯說需要重新加載頁面。

  6. 打開大型命令行/命令框。

  7. 粘貼在下面的代碼:

    var scriptNode   = document.createElement ("script"); 
    scriptNode.setAttribute ("src", "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"); 
    document.body.appendChild (scriptNode); 
    
    function KilltheCrud() 
    { 
        jQuery('p[style*="rtl"]').remove(); 
        jQuery('div[style*="rtl"]').remove(); 
    } 
    
    //-- Delay to allow jQuery to load and initialize. 
    setTimeout (KilltheCrud, 444); //-- Adjust time delay if necessary 
    


  8. 按 「運行」。

  9. 該文件現在應該被剝離,保存修改後的文件。

  10. 完成!重複其他文件。

+0

感謝您的回答。事實證明,我需要做更多,我通過模仿你的代碼來做到這一點。再次,謝謝。 – Soumendra 2011-02-25 07:19:09

+0

不客氣。樂意效勞。 – 2011-02-25 07:24:20

相關問題