我的数据库中有一个包含此示例子字符串的字符串。
string = "\357\277\275\357\277\275"
当我尝试将其转换为JSON时,我会遇到很多这些坏男孩(因为他们是非ASCII字符)。
�
然后,当jQuery尝试解析JSON时,它只是疯了,给了我一个SyntaxError: Unexpected Token
以下是三种可能的解决方案。
我对这些中的任何一个都很好,但不知道如何去做。想法?
答案 0 :(得分:0)
"\357\277\275"
是替换字符(�)的ascii八进制表示。这表明当您转换为JSON时,字符串中存在非ascii字符。理想情况下,您可能希望识别非ascii字符如何进入您的数据上游,但简单的解决方法是删除它们:
clean_string = "absr\357\277\275/xyz".gsub("\357\277\275","")
#=> "absr/xyz"
答案 1 :(得分:0)
为了从Ruby中的字符串中去除不可打印的字符,可以使用以下正则表达式。
"your_string".gsub!(/[^[:print:]]/, '')