我使用API接收数据,有几个部分导致我需要解决的问题:
"Apple® iPad® 2 with Wi-Fi - 16GB"
"Rocketfish™ - Premium Vehicle Charger for Apple® iPad™, iPhone® and iPod®"
我需要移除特殊的UTF8字符,例如® ™
,我该如何实现?
答案 0 :(得分:3)
如果要删除除基本拉丁语以外的所有符号,只需应用正则表达式,如
str = str.replace(/[\u0080-\uFFFF]+/g, "");
请参阅this list of unicode characters以选择您需要接受的字符
答案 1 :(得分:2)
首先,请确保您绝对不能使用那些“有问题”的符号。清洁的现代程序应该正确理解任何语言的输入。
至于你删除任何不可读内容的请求,最好指定你要留下的内容,因为F. Calderan的例子不会删除指定FFFF位置之上的任何额外Unicode符号。所以,考虑到你只需要ASCII:
str = str.replace(/[^\u0000-\u007F]+/g, "");