Как найти CJK (китайский) символы в mongodb - PullRequest
0 голосов
/ 04 января 2019

В оболочке mongodb эта команда находит документы в базе данных:

> db.messages.find({'headers.value': /姚/ }).count()
> 9

Обратите внимание на китайский символ.Этот символ \u59e6 Юникод экранирован.

Однако ни один из этих запросов не приводит к какому-либо попаданию (возвращает null, 0 с count ()):

> db.messages.find({'headers.value': new RegExp("\u59e6") }).count()
> db.messages.find({'headers.value': new Regexp('\u59e6') }).count()
> db.messages.find({'headers.value': /\\u{59e6}/ }).count()
> db.messages.find({'headers.value': /\u{59e6}/ }).count()
> db.messages.find({'headers.value': {regex: '\\u{59e6}'}}).count()
> db.messages.find({'headers.value': {regex: '\u{59e6}'}}).count()
> 0

Все эти возвраты 0Я пропустил все, кроме последнего.

Может ли кто-нибудь помочь мне, как правильно экранировать символы Юникода в регулярном выражении в оболочке mongodb?В конце я хотел бы определить запросы с диапазонами Юникода.

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