хорошо, вот решение, которое сработало для меня.
Обратите внимание, что в моем приложении я точно знаю, что языком ввода будет один из двух языков: либо английский, либо арабский.
так вот что я сделал
var msgText = entered message text;
var textLength = msgText.length; // entered message length
var isEnglish = true;
for (var index = 0; index <= textLength; index = index + 1) {
if (msgText.charCodeAt(index) > 160) {
//Not English
isEnglish=false;
break;
}
}
в предыдущем примере это то, что мне нужно, если один символ арабский, весь текст должен быть проверен как арабский, поэтому я добавил переменную isEnglish = true по умолчанию и будет изменен только в том случае, если символ в строке не английский
Я перебрал символы в строке, используя charCodeAt (index), который возвращает номер символа ISO Latin-1.
используя таблицу на этой странице, я смог решить, что максимальное число в этом наборе, которое представляет английские символы, было 160 и