2013-04-28 28 views
1

我從HTML元素中讀出文本並將其保存在JS數組中,但如果用戶放入多於一個空白空間,它將轉換爲不可破壞的空間符號。稍後如果我讀出陣列,它會打印出「& nbsp」而不是空白。我如何檢測空的空間?JS - 非易碎空間的轉換

&nbsp //instead of an empty space 

我試圖取代,但它不工作:

myText.replace(/( )*/g," ") 
+1

目前還不清楚是什麼你」再問。在HTML中,多個連續空格呈現爲單個空格,所以如果您想要多個空格實際顯示,則使用' '。 – jfriend00 2013-04-28 16:16:35

+0

用戶得到一個空的文本框,如果他提交空白空間,它們將被轉換爲&nbsp – daisy 2013-04-28 16:19:57

+1

爲什麼不能用空格替換所有' '事件? – Uby 2013-04-28 16:20:20

回答

3

正則表達式的符號表的空白

\x20 – standard space ‘\s’ 
\xC2\xA0 – ‘ ’ 
\x0D - ‘\r’ 
\x0A – new Line or ‘\n’ 
\x09 – tab or ‘\t’ 

JS表記數法:

String.fromCharCode(160) -   

現在用它用於替換您的所有角色,廣告d更多,如果你想刪除換行符或回車

var re = '/(\xC2\xA0/| )'; 
x = x.replace(re, ' '); 

你也可以使用

var re = '/(\xC2\xA0/| )'; 
x = x.replace(re, String.fromCharCode(160)); 

嘗試使用該工具來測試更多的正則表達式www.rubular.com

+1

如果您使用的是jQuery,您還可以使用$(selector).html()來獲取所有空間的數據。 – Notepad 2013-04-28 18:11:47