Обнаружение символа юникода (кандзи) из ряда символов в Javascript? - PullRequest
3 голосов
/ 22 августа 2011

Я пытаюсь прочитать ввод и передать его, только если это японский кандзи.Это означает, что символ находится где-то между 4e00 и 9faf, согласно http://www.rikai.com/library/kanjitables/kanji_codes.unicode.shtml

Возможно ли использовать Javascript для проверки в этом диапазоне?

Ответы [ 2 ]

3 голосов
/ 22 августа 2011

/[\u4e00-\u9faf]+/ должен это сделать.Соответствует одному или нескольким символам в диапазоне 4e00 - 9faf.

Из документации MDN :

\uhhhh Соответствует символу с кодом hhhh(четыре шестнадцатеричные цифры).

Итак, в вашем случае, если вы хотите проверить всю строку, вы, вероятно, захотите:

if(/^[\u4e00-\u9faf]+$/.test(str)) {
    // str is a kanji
}
1 голос
/ 29 апреля 2014

Я просто хотел бы добавить, что после того, как я задал этот вопрос, я понял, что необязательно использовать необработанный идентификатор Unicode, и вы можете просто добавить сам символ.Так, например, вместо [\ u4e00- \ u9faf] вы можете искать по [一 - 龯]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...