搜索与MongoMapper中的正则表达式不匹配的字段

时间:2012-05-25 09:16:38

标签: mongodb mongomapper

在MongoMapper中,我可以使用以下查询根据正则表达式匹配搜索项目:

Foo.where(:name => /Foo.*/)

如何搜索name字段与/Foo.*/不匹配的项?

3 个答案:

答案 0 :(得分:5)

您可以使用$not

db.customers.find( { name : { $not : /acme.*corp/i } } );

答案 1 :(得分:0)

如果您使用的是python(pymongo),这将无效,您会对如何使用BSON正则表达式产生令人困惑的错误。

但是,它会直接接受python正则表达式对象:

db['collection'].find({'name': {'$not': re.compile("^__TEST")}})

答案 2 :(得分:0)

或者mongomapper中的类似内容也可以用于搜索在电子邮件字段中未找到电子邮件域并被批准为false的情况:

import pandas as pd 
df = pd.read_csv(‘nameofcsv.csv’)
print(df)