Détecter russe / cyrillique en Javascript chaîne?
Je suis en train d'essayer de détecter si une chaîne contient russe (cyrillique) caractères ou pas. Je suis en utilisant ce code:
term.match(/[\wа-я]+/ig);
mais elle ne fonctionne pas – en fait, elle retourne la chaîne de nouveau comme il est.
Quelqu'un peut-il aider avec le bon code?
Merci!
Vous incluez
\w
dans l'expression régulière, de sorte qu'il corresponde mots avec des caractères latins.OriginalL'auteur Dmitry Paranyushkin | 2014-11-10
Vous devez vous connecter pour publier un commentaire.
Peut-être que vous vouliez utiliser le
RegExp
test
méthode à la place?Noter que JavaScript regexes ne sont pas vraiment compatible avec Unicode, ce qui signifie que le
i
drapeau n'aura aucun effet sur tout ce qui n'est pas au format ASCII. D'où la nécessité pour l'orthographe inférieur et supérieur de cas plages séparément.Ёё
puisqu'ils sont également utilisés en russe.Bon point fixe.
le cyrillique unicode gamme doens fonctionne pas, mais l'autre méthode fonctionne très bien
Cela répond donc à vous de stocker votre .js fichiers au format unicode. Hmm.
ou l'utilisation d'échappement Unicode dans la regex. Mais le stockage et la transmission des fichiers texte au format UTF-8 devrait vraiment être le défaut de nos jours. Nous ne sommes pas dans les années 70 plus.
OriginalL'auteur Joey