我必须在我的应用程序中执行查找/替换功能,我们决定在正则表达式Mongo查询中添加忽略空格选项。所以使用这个代码
BsonRegularExpression breg = new BsonRegularExpression (pattern,request.matchCase ? "x" : "xi");
生成这个字符串,然后在mongo {/pattern/xi}
中查询。但事实证明,为了使用"x"one_answers"s"选项,你必须使用$options: mongoDB的格式下面是mongoDB文档的确切引用
要使用x选项或s选项,必须将$regex操作符表达式与$options操作符一起使用。例如,要指定i和s选项,必须对
都使用$options。
所以现在我不知道如何使MongoDB c#驱动程序产生我想要的查询,或者是否有任何其他工作。
这是我所知道的两种可能性。
var spec = new Document("someName", new MongoRegex("your regex", "x"));
yourCollection.Find(spec)
第二种方法
var collection = GetCollection();
var filter = Builders<Entity>.Filter.Regex("x", new BsonRegularExpression("your regex, "i"));
return await collection.Find(filter).FirstOrDefaultAsync();
有关bsonregulareexpression方法的更多信息,请查看http://api.mongodb.com/java/current/org/bson/BsonRegularExpression.html