我正在构建一个JavaScript数组,具体取决于用户的输入。该阵列正在建设中,但如果用户输入中文符号则会崩溃。我假设如果用户输入中文“或a或者a”。我有程序替换此英文版本,但我不知道如何替换它的中文版本。
有人可以帮忙吗?
感谢他们的所有输入
答案 0 :(得分:3)
从What's the complete range for Chinese characters in Unicode?开始,CJK unicode范围为:
因为JS字符串仅支持最大值为FFFF的UCS-2,所以最后两个范围可能不是很有意义。因此,如果您正在构建JS字符串,则应该能够使用以下内容过滤掉中文字符:
replace(/[\u4e00-\u9fff\u3400-\u4dff\uf900-\ufaff]/g, '')
答案 1 :(得分:2)
您需要使用unicode替换器。 我认为它会对你有所帮助:http://answers.yahoo.com/question/index?qid=20080528045141AAJ0AIS
答案 2 :(得分:1)
.Net提供了JavaScriptSerializer及其方法Serialize
,它创建了正确的转义JavaScript文字(虽然我个人没有使用它与中文字符,但没有理由它不应该工作)
答案 3 :(得分:1)
以broofa的答案为基础:
如果你只是想找到并替换中文标点符号,如“或”或者a。那么你会想要在FF00-FFEF范围内使用unicode字符。以下是来自Unicode的PDF显示:http://unicode.org/charts/PDF/UFF00.pdf
我想你至少需要更换它们:FF01,FF02,FF07,FF0C,FF0E,FF1F和FF61。这应该是中国的主要标点符号。你可以使用broofa的替换功能。