如何在mongodb中搜索CJK(中文)字符

时间:2019-01-04 10:22:11

标签: mongodb unicode

在mongodb shell中,此命令在数据库中查找文档:

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

请注意中文字符。 该字符是\u59e6的Unicode转义符。

但是这些查询均未产生任何匹配(返回null,count()返回0):

> 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 shell中的regexp中正确转义unicode字符吗?我想最后定义带有unicode范围的查询。

0 个答案:

没有答案