I'm trying to detect if a string contains Russian (cyrillic) characters or not. I'm using this code:
term.match(/[\wа-я]+/ig);
but it doesn't work – or in fact it just returns the string back as it is.
Can somebody help with the right code?
Thanks!
Use pattern
/[\u0400-\u04FF]/
to cover more cyrillic characters:Perhaps you meant to use the
RegExp
test
method instead?Note that JavaScript regexes are not really Unicode-aware, which means the
i
flag will have no effect on anything that's not ASCII. Hence the need for spelling out lower- and upper-case ranges separately.