Вы не можете сделать это в Javascript, потому что Javascript не обеспечивает даже самой базовой поддержки уровня 1 Unicode в своих регулярных выражениях.Вы должны были бы переключить языки, чтобы сделать это правильно.
Для этого нельзя использовать диапазоны перечисляемых блоков.Это сбивает с толку блоки и скрипты, которые глубоко испорчены.Существует 150 кодовых точек, которые имеют свойство \p{Script=Cyrillic}
, но в которых отсутствует свойство \p{Block=Cyrillic}
.Они в разных блоках.Часы:
$ unichars '\p{Script=Cyrillic}' '\P{Block=Cyrillic}' | wc -l
150
Кроме того, в кириллическом блоке есть пара не кириллических кодовых точек.
Лучшее, что вы можете сделать, - это перечислить все 404 кириллических кода в качестве класса символов, который может оказаться слишком большим.
$ unichars '\p{Script=Cyrillic}' | wc -l
404
Вы можете использовать unichars сценарии , чтобы перечислить все это, если вы действительно хотите.Вы также можете захватить uniprops script , пока вы там.