我正在设置一个Zend_Route(但它仍然只是一个正则表达式),我希望匹配一个像
的网址/en/experience/this-is-my-name-and-the-last-is-1-of-id-123456.html
所以我想抓住
this-is-my-name-and-the-last-is-1-of
和
123456
我试过
\w{2}/experience/(.+)?-(\d+)\.html
但这似乎不起作用。
如果相反,例如,这将很容易如果它是名称
/en/experience/123456-this-is-my-name-and-the-last-is-1-of-id.html
我可以用
\w{2}/experience/(\d+)-(.+)\.html
但这是一个警察 - 所以关于如何匹配原始格式的任何建议?
答案 0 :(得分:1)
试试这个:
/\w{2}/experience/(.+?)-(\d+)\.html
答案 1 :(得分:0)
试试这个:
/\w{2}/experience/(.+)?-(\d+)\.html
preg_match('#^/\w{2}/experience/(.+)?-(\d+)\.html$#i', '/en/experience/this-is-my-name-and-the-last-is-1-of-id-123456.html', $matches);
所以,你的模式只与开头的斜杠匹配。