【问题标题】:Get a subgroup in regex在正则表达式中获取子组
【发布时间】:2012-05-05 15:02:47
【问题描述】:

在我的 .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

谢谢>

【问题讨论】:

    标签: regex apache url rewrite


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2021-08-02
      • 1970-01-01
      • 2018-02-13
      • 1970-01-01
      • 1970-01-01
      • 2011-06-26
      • 2016-12-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多