查找URI模式匹配的文档

时间:2017-02-16 17:07:07

标签: mongodb

我的收藏包含API URI端点信息。我希望能够将URI作为搜索字符串传递到MongoDB,并找到与URI模式匹配的文档。

例如

如果我通过“/ api / name / jason / profile”

我想在我的收藏中搜索包含...

的文档中的所有文档

URI: “/ API /名称/(:*)/简档”

(:*)是一个通配符。

关于我应该怎么做的任何建议?

UPDATE ::: 澄清...

如果我有一个没有真正改变的简单模式,那将会奏效。但问题是我可能不知道URI的哪一部分是动态的。所以我真正需要做的是将我的URI与一系列包含不同URI模式的文档进行比较,这样我的文档可能会有这样的模式。 。

/api/name/{id}/ 
/api2/event/{id} 
/api/events/{from_date}/{to_date}

我想要做的是找到一个与我传递的URI模式最匹配的文档。

因此,如果我传递“/ api / events / 20170102/20170330”,那么Mongo将返回具有“uri”:“/ api / events / {from_date} / {to_date}”模式的文档。

1 个答案:

答案 0 :(得分:0)

您可以尝试以下方式: -

db.collection.find( { 'URI': { $regex: '/api/name/*/profile', $options: 'i' } } );