К сожалению, Javascript - это регулярное выражение только для ASCII.Unicode не поддерживается (я имею в виду, что символы не-ASCII в Unicode не «делятся на классы». Так, например, \d
- это всего 0-9).Если вам нужны расширенные регулярные выражения (регулярные выражения Unicode) в Javascript, вы можете попробовать http://xregexp.com/
И мы даже не будем углубляться в проблему суррогатных пар.Символ в Javascript - это точка UTF-16, поэтому он не всегда является «полным» символом Unicode.К счастью, японцы должны быть полностью в BMP (но учтите, что объединение Хана находится в плоскости 2, поэтому каждый из этих символов состоит из 2x символов UTF-16)
Если вы хотите прочитатьЧто-то про Unicode, вы можете начать с Wiki Отображение символов Unicode , например.