我正在尝试使用以下 mongoexport 命令从 mongo 数据库导出以搜索文本表情符号:
mongoexport -d <db> -c <col> -f text -q '{text: /.*:\)/}'
但是当我尝试执行命令时 mongoexport 返回:
我试图对右括号使用十六进制转义符:
mongoexport -d <db> -c <col> -f text -q '{text: /.*:\x29/}'
但我在同一个位置遇到了同样的错误。看来 mongoexport 解析器在遇到“\”时会停止。我很难相信 mongoexport 有这个限制(因为它几乎不可能使用正则表达式),所以我做错了什么?
最佳答案
我能问你为什么要逃避正确的 parent 吗?我在正确的括号之前尝试了没有转义的查询,并且它起作用了:'{text: /.*:)/}'
作为替代方案,如果您需要在查询中转义,那么您必须转义转义符号,因为字符串被解析两次( shell ,然后是数据库):'{text: /.*:\\)/}'
关于mongodb - 带有正则表达式查询的 mongoexport,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13073330/