【发布时间】:2018-11-27 14:24:50
【问题描述】:
我收藏了一系列包含标题、作者、评分、演员和其他字段的电影。
我正在尝试查找至少有一个名字和姓氏以 C 开头的演员的电影,并显示标题和演员。 Actors 是一个包含演员的数组(名字和姓氏在同一字段中),例如:{Matt Damon, Bradd Pitt} 等...
我试过这个:
db.movieDetails.find(
{ actors: { $regex: "^C.C" , $options: 'i' } },
{_id:0, title:1, actors:1}
);
还有这样的聚合:
db.movieDetails.aggregate(
{$unwind: '$actors'},
{$match: { actors: { $regex: "^C.C", $options: 'i' } } },
{$group: {_id: { actors: '$actors' , title: "$title" }}}
);
但我只是想通过查看何时有一个以 C 开头的演员和另一个事件来避免这个问题,而这个解决方案只是部分起作用,因为它返回给我的电影有两个演员只有他们的名字以 C 开头.
我想知道是否有一种方法可以使用正则表达式来检查整个字符串中以某些东西开头的所有单词。
【问题讨论】:
标签: javascript regex string mongodb nosql