Javascript字符串拆分阿拉伯语/波斯语字符串中的问题

时间:2017-11-02 10:50:40

标签: javascript arabic

我正在尝试使用javascript字符串拆分拆分两个波斯字符,但它没有正确拆分。

var test = '"حسن روحانی"،"حسن+روحانی"';
var tmpkeywords =  test.split(',');
console.log(tmpkeywords);

拆分结果应该是这样的: [“”حسنروحانی“”,“”حسن+روحانی“”]

但相反它就像[“”حسنروحانی“,”حسن+روحانی“coming”]。它适用于英文字符或数字。

我的小提琴:https://jsfiddle.net/tueo3sfa/1/

1 个答案:

答案 0 :(得分:1)

你的字符串"حسن روحانی"،"حسن+روحانی"不包含字符“,”(U + 002C COMMA),但是“،”(U + 060C ARABIC COMMA):这就是为什么它不会拆分并返回整个原始字符串。

要获得您想要的内容,您需要按“،

进行拆分
var test = '"حسن روحانی"،"حسن+روحانی"';
var tmpkeywords =  test.split(',');
console.log(tmpkeywords);

另请注意,其他语言中有许多不同的逗号,如果您需要以通用方式处理它们,您可能希望全部指定它们(原始未过滤列表http://www.fileformat.info/info/unicode/char/search.htm?q=comma&han=Y&preview=entity),或者,如果适用,使用Unicode类(例如,通过标点符号进行拆分,另请参阅http://inimino.org/~inimino/blog/javascript_cset示例)。