2

我有以下正则表达式#^en/cities/(.*?)/$#,我希望它匹配任何内容,但在第一个斜杠处停止。

即,如果有人设法键入该 URL,它应该匹配 'paris' 而不是 'paris/france'。

我以为我已经对问号表示不贪心,但显然不是。

4

1 回答 1

2

使用否定字符类。

#^en/cities/([^/]+)/$#

在您的正则表达式中,非贪婪失败了,因为您将最后一个斜线锚定到末尾($)。删除它也会使您的正则表达式工作:

#^en/cities/.*?/#
于 2012-11-10T09:45:54.757 回答