Мне интересно, как использовать безразличный для $ в выражениях.
В соответствии с официальным руководством MongoDB вы можете сделать это:
{ name: { $in: [ /^acme/i, /^ack/ ] } }
Я проверил это на компасе, и он работает нормально, поиск нечувствителен.
Мне нужно это с помощью драйвера Mongo в C #.
Я делаю это:
var array = new BsonArray(companyNames);
var filter = new BsonDocument { { "Name", new BsonDocument { { "$in", new BsonArray(array) }} } };
var result = _collection.Find(filter).ToList();
companyNames - это строка []
Однако это возвращает мне только точные совпадения. Это очевидно, потому что я не включаю выражение "регулярное выражение". Но я не знаю, как я могу включить регулярное выражение в строку.
Обходной путь - создать $ или выражение с регулярным выражением для каждого названия компании.
Кто-нибудь знает, как это сделать?
Спасибо