2016-10-31 69 views
-1

我有一些使用數據表的代碼,並且返回的字段之一是字符串值,最近人們已經從包含一些特殊字符的電子郵件中粘貼了值MS-Word智能報價。當它試圖顯示我得到一個錯誤。JSON中的特殊字符返回值拋出錯誤

如果我將文本複製/粘貼到記事本++中,我可以看到一些奇怪的符號。一旦我刪除它們,錯誤就會消失。

是否有一些如何去除我的文本中的所有特殊字符與JavaScript函數調用?

+0

JSON可容納Unicode字符,你不應該需要做的什麼特別的。你如何編碼JSON? – Barmar

+0

我只是從REST服務獲取值。該文本包含的字符在記事本++中顯示爲符號。在我刪除它們後,json顯示正常。我相信我有下面顯示的答案,我除去字母,數字和空格之外的所有內容。 – Bitwyse1

+0

看看這篇文章:http://stackoverflow.com/a/34649086/2238515 –

回答

0

這是否打鍋。你:

myStr=myStr.replace(/[^\w\s]/gi, '') 

您可以添加更多的字符到這個「白名單」,例如:

myStr=myStr.replace(/[^\w\s,\/#!$%\^&\*;:]/gi, ''); 
+0

足夠接近。我剛剛發現[^ a-zA-Z0-9]/g – Bitwyse1

+0

這也將刪除普通的標點符號。 – Barmar

+0

@Barmar true,你可以在這個「白名單」中加入更多字符 –