我遇到了一个问题.我有一个单词数组,我使用这些单词搜索数据库,并使用匹配字段匹配任何文档:
collection.find({"word":{"$in":words}})
Run Code Online (Sandbox Code Playgroud)
以上工作非常好,但我希望能够使用正则表达式.我现在的问题是,说数组中的一个单词拼写$in而不是accus,我希望accuse查询仍然返回与单词相关的文档(记录/行)find().
我试过这个,根本不起作用,没有返回结果.
collection.find({"word":{"$in":{"$regex":words}}})
Run Code Online (Sandbox Code Playgroud)
数组中的每个元素都在accuse前面的单词中读取,例如^
我只是以错误的方式解决这个问题吗?顺便说一句,我正在将Python与MongoDB结合使用.提前致谢.
vis*_*ssi 10
对不起,迟到的回答,只是谷歌搜索你的问题.你应该使用一个正则表达式,而不是它们的数组,如:
'^[work|accus*|planet]'
Run Code Online (Sandbox Code Playgroud)