查询查找至少有一个数组元素符合特定条件的文档?

query to find doc with at least one of its array element matches certain condition?

假设我在 mongodb 中有这样的文档:

{
  ...
  "cities" : ["san jose", "san francisko", "new york"],
},
{
  ...
  "cities" : ["santa clara", "seattle"],
}

如何编写查询来查找 [cities] 数组至少有一个以给定值开头的元素(例如 "san")的所有文档?最好在 c# 驱动程序模型中

MongoDB.Driver 提供了 Regex 方法,它可以接受集合作为第一个参数,正则表达式作为第二个参数

var filter = Builders<Post>.Filter.Regex(x => x.Cities, "texttttt");
return collection.Find(filter).ToListAsync();