2011-03-13 1393 views

回答

0

我只是嘗試這種方法:

editor.getContent() 
    .replace(/<[^>]*>/ig, ' ') 
    .replace(/<\/[^>]*>/ig, ' ') 
    .replace(/&nbsp;|&#160;/gi, ' ') 
    .replace(/\s+/ig, ' ') 
    .trim(); 
  • 取代了開啓和關閉的HTML標籤與空間
  • 替換空間的各種已知的特殊字符(加你爲好)
  • 替換多個空格與單個空間

工作相當不錯,但它顯然不是完美的。我只需要對純文本進行近似計算,因此我願意忽略角落案例,例如使用粗體或斜體的一部分(<b>a</b><i>x</i>以上的替換將生成兩個單獨的單詞a b而不是ab)。

這是Regular expression to remove HTML tags from a string

希望幫助的延伸。

+1

謹防正則表達式解析HTML。 http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454小馬,他來了。 – MushinNoShin 2016-01-07 13:40:39

16

試試這個:

var myText = tinyMCE.activeEditor.selection.getContent({ format: 'text' }); 
+6

在沒有.selection部分的情況下工作,只是'tinyMCE.activeEditor.getContent({format:'text'});' – Neutrosider 2016-02-17 11:35:00

+0

對於它的價值,這在4.3版本中有效。 – Paritosh 2016-10-06 21:40:51

3
var rawtext = tinyMCE.activeEditor.getBody().textContent; 
+0

這個問題是它將'
'轉換成''''換句話說什麼都沒有。這會導致單詞崩潰,例如''end of line with periodOnother paragraph'' – jimasun 2017-02-27 16:51:41