正则表达式匹配嵌套的显示路径

时间:2013-06-07 20:46:41

标签: ruby-on-rails regex

我正在尝试编写一个正则表达式来匹配嵌套资源的显示路径。路径如下:/users/:user_id/products/:id - 我无法编写正则表达式来检查网址是否适用于此路径。在products /:id之后我不希望传递匹配项。现在我有以下内容:

/users/([^&]*)/products/

这适用于它将匹配我正在寻找的url路径,但我无法弄清楚如何在/ products /:id之后结束它,因此它将不匹配/ edit等操作。因此users/1-my-name-is-bob/products/1-awesome-product应匹配,但users/1-my-name-is-bob/products/1-awesome-product/edit不应与正则表达式匹配。

1 个答案:

答案 0 :(得分:1)

尝试使用此模式:

\/users\/([^&\/]+)\/products\/[^\/]+\Z

\Z代表字符串结尾

如果不需要,您可以在开头删除斜杠,或者使用问号

使其成为可选项