У меня есть база данных mongo, в которой хранятся все английские слова. Я хочу получить набор слов, которые содержат только определенные символы. e.g .: в базе данных [ash, clash, bash, has] прошу [пепел] я хочу получить [есть, пепел] как выход. возможно, есть быстрый способ, что мне не нужно создавать некоторые специальные структуры данных. Я буду писать код в C#.MongoDB: Как фильтровать строки, содержащие только определенные символы?
-1
A
ответ
0
Если вы используете драйвер .Net для Монго, то его реализация LINQ должна быть прямой, чтобы использовать. Более того, здесь MONGO LINQ Тогда это было бы (некоторые исключения) так же, как таргетинг на обычный IEnumerable.
Ваша проблема, вероятно, разрешима с использованием регулярного выражения, которое может использоваться в предложении Where с использованием linq. Регулярное выражение имеет тенденцию к отладке, так что пока вы не найдете правильное регулярное выражение, это альтернативный пример (его можно дополнительно оптимизировать).
private void Test()
{
// fetching from database
// var samples = database.GetCollection<T>"collectionname").AsQueryable<Employee>();
string[] samples = new[] {"nnn", "shhhh", "has", "s", "ash"};
string chars = "ash";
var matches = samples.Where(x => IsMatch(x, chars));
}
private bool IsMatch(string sample, string matchChars)
{
if (sample.Length != matchChars.Length)
return false;
sample = matchChars.Aggregate(sample, (current, c) => current.Replace(c, ' '));
return sample.Trim().Length == 0;
}
0
Попробуйте это как запрос ... Я ищу свой ID, где он содержит 52C.
{ "_id": { $regex: '.*\Q52C\E.*', $options: 'i' } }
C# Эквивалент:
await collection.Find(new BsonDocument("_id", new BsonDocument { { "$regex", $".*\Q{YourString}\E.*" },
{ "$options, "i" } })).ToListAsync();
Смежные вопросы
- 1. Как выбрать определенные столбцы, содержащие определенные строки/символы?
- 2. Возвращаемые элементы, содержащие только определенные символы
- 3. Как искать Строки, содержащие определенные символы в sql?
- 4. Fortran - вытягивающие строки, содержащие только заданные символы
- 5. в R как фильтровать строки, содержащие подстроку?
- 6. Как совместить только определенные символы?
- 7. как фильтровать определенные символы в JTextField
- 8. удалять строки, содержащие определенные данные
- 9. Как выбрать строки, содержащие неанглийские символы в sql server 2005 (он должен фильтровать только неанглийские символы, а не специальные символы)
- 10. SQL: как получить строки, содержащие только определенные идентификаторы?
- 11. расщепленные строки, содержащие символы трубопроводные
- 12. Как избежать только определенные символы
- 13. Разрешить только определенные символы
- 14. Как отображать строки mysql, содержащие определенные данные?
- 15. preg_match_all() Строки, содержащие специальные символы
- 16. D3.js ~ Как фильтровать значения данных, содержащие определенные значения/слова?
- 17. Scala извлечения только определенные символы
- 18. Pattern.compile строки, содержащие специальные символы
- 19. SQL Server - фильтровать определенные строки
- 20. regex фильтровать слова, завернутые в определенные символы
- 21. Split строки, содержащие символы новой строки Java
- 22. Как найти строки, содержащие два | символы
- 23. Как принимать строки, содержащие escape-символы python
- 24. Как сравнить 2 строки, содержащие одинаковые символы
- 25. Как фильтровать определенные строки в Excel
- 26. рубин строки полоса, определенные символы
- 27. r - Фильтровать строки, содержащие строку из вектора
- 28. Как изменить Java строки содержат только определенные буквенные символы
- 29. bash - Как сохранить только определенные символы из строки
- 30. Извлечь определенные символы из строки