簡體   English   中英

Rails JSON非標准字符

[英]Rails JSON non-standard characters

我的數據庫中有一個包含此樣本子字符串的字符串。

string = "\357\277\275\357\277\275"

當我嘗試將其轉換為JSON時,會遇到很多這些壞男孩(因為它們是非ASCII字符)。

然后,當jQuery嘗試解析JSON時,它只是弄亂了,並給了我SyntaxError: Unexpected Token

這是三種可能的解決方案。

  1. 將字符串轉換為JSON可接受的值
  2. 刪除令人反感的字符
  3. 用諸如“無效字符”之類的消息替換字符串

我對其中的任何一個都很好,但是不知道該怎么做。 有什么想法嗎?

"\\357\\277\\275"是替換字符( )的ascii八進制表示形式。 這表示當您轉換為JSON時,字符串中包含非ascii字符。 理想情況下,您希望確定非ASCII字符如何進入上游數據,但簡單的解決方法是刪除它們:

clean_string = "absr\357\277\275/xyz".gsub("\357\277\275","")
  #=> "absr/xyz"

為了從Ruby中的字符串中去除不可打印的字符,可以使用以下正則表達式。

"your_string".gsub!(/[^[:print:]]/, '')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM