1

在我的 .htaccess 中,我做了一些 rewriteURL,但我在获取数据时遇到了一些问题。

我有 :RewriteRule ^forum/([0-9]+)-([a-zA-Z]+)/([0-9]+)-([a-zA-Z]+)/?$ index.php?page=forum&category=$1&topic=$3 [NC,L]

所以我可以得到例如:index.php?page=forum&category=123&topic=456有了这个URL forum/123-cat/456-topic

但我想要这个正则表达式^forum/([0-9]+)-([a-zA-Z]+)(/([0-9]+)-([a-zA-Z]+))?/?$,但 3 美元得到456-topic,而不仅仅是456.

那么如何获得公正456呢?

谢谢>

4

1 回答 1

2

3美元就是全部;你想要的那件是 4 美元。

通过打开括号来计数。 ([0-9]+)是 1 美元,([a-zA-Z]+)是 2 美元,(/([0-9]+)-([a-zA-Z]+))是 3 美元,([0-9]+)里面是 4美元,里面是([a-zA-Z]+)5 美元。

于 2012-04-23T14:10:32.640 回答