Javascript – как найти иврит?
-
19-09-2019 - |
Вопрос
Я пытаюсь определить, начинается ли строка (первая буква) с ширины языка RTL/иврита.
Любые идеи?
Решение
Это позволит найти еврейские буквы, закодированные в иврит Диапазон кодовых точек Юникода: [\u0590-\u05FF]
Другие советы
JavaScript не поддерживает сценарии регулярных выражений, такие как \p{InHebrew}
(или что-то подобное).Однако он поддерживает экранирование Юникода, поэтому вы можете использовать регулярное выражение, например:
/[\u0590-\u05FF]/
который будет соответствовать одному ивритскому символу.
Видеть: http://unicode.org/charts/PDF/U0590.pdfи: http://www.regular-expressions.info/unicode.html
// First choose the required validation
HebrewChars = new RegExp("^[\u0590-\u05FF]+$");
AlphaNumericChars = new RegExp("^[a-zA-Z0-9\-]+$");
EnglishChars = new RegExp("^[a-zA-Z\-]+$");
LegalChars = new RegExp("^[a-zA-Z\-\u0590-\u05FF ]+$"); //Note that this one allows space
// Then use it
if (!LegalChars.test(Field)) {
return false;
}
if (str.charCodeAt(0) >= 0x590) && (str.charCodeAt(0) <= 0x5FF) then
это считается еврейским символом
Специально для иврита на вопрос уже дан ответ - относительно всех диапазонов:
Специально для JS я бы порекомендовал инструмент для создания регулярного выражения - см. Генератор RegExp диапазона Юникода (Компилирует диапазоны символов, подходящие для использования в JavaScript)
[просто выберите иврит или нужные вам алфавиты или диапазоны]