MongoDB用正则查询时如何转义查询条件中的字符?


keyword = ''
post = collection.find({ 'key': '/^' + keyword })

如上面的代码所示,当keyword包含一些正则符号,比如 $ 之类时,查询结果就不准确了。
不知道mongodb有没有内置转义的方法,还是说必须要外部对keyword进行转义?

pymongo mongodb

pengwar 11 years, 9 months ago

mongodb的正则表达式查询有两种格式
一种是{key:{$regex:".*"}}
另一种是{key:/.*/}
对于第一种转义用\\
第二种用\

bitafan answered 11 years, 9 months ago

Your Answer