Regex 正则表达式如何查找匹配项并仅使用其中的一些?

Regex 正则表达式如何查找匹配项并仅使用其中的一些?,regex,redirect,Regex,Redirect,更新: 所以我的目标是重定向url。当有人访问/taxonomy/slug/id时,该人应重定向到/slug 分类法将字符串、数字和任何字符作为标准url 鼻涕虫也一样 id只是数字 唯一的例外情况是:当slug部分为“page”时,它不应该重定向到某个地方。 我正在使用PHP。 我希望能说得更清楚 我正试图改变永久链接的结构,但需要保持谷歌网页上的链接安全。这不是确切的wordpress问题 当前的结构是:/taxonomy/slug/id(以及一些可选的url参数) 目标是:/slug

更新: 所以我的目标是重定向url。当有人访问
/taxonomy/slug/id
时,该人应重定向到
/slug

  • 分类法将字符串、数字和任何字符作为标准url
  • 鼻涕虫也一样
  • id只是数字
唯一的例外情况是:当slug部分为“page”时,它不应该重定向到某个地方。 我正在使用PHP。 我希望能说得更清楚


我正试图改变永久链接的结构,但需要保持谷歌网页上的链接安全。这不是确切的wordpress问题

当前的结构是:/taxonomy/slug/id(以及一些可选的url参数)

目标是:/slug/(和一些url参数)

我的第一种方法是将regex设置为(.)/(.)/([0-9]+)/?(.*)?只需2美元4美元

然后,分页问题出现了。当我转到归档文件第一页以外的另一页时,它会将我重定向到某个地方。仅供参考。分页遵循这种结构/分类法/page/2

/分类法/page/2应转到第2页/分类法/pagehelloworld/2应转到pagehelloworld/taxonomy/helloworldpage/2应转到页面而不是存档

我的第二种方法是使用regex(.)/(?!page.)/([0-9]+)/?(.*)?然后忽略字符串中包含的所有url“page”,如“page2”和“123page”

所以我想知道如何解决这个问题。另一件事想解决另一件事。当url为“123page”时,正则表达式应该拉取“123page”,而不仅仅是“123”


谁能有好的解决办法?提前谢谢。

我还没有完全理解分页重定向。请告诉我/taxonomy/page/2、/taxonomy/hwpage的预期重定向URL是什么/2@Alex第一个不应该重定向。第二个应该重定向/hwpage@anubhava我正在使用支持正则表达式的PHP和Wordpress重定向插件。