You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何合并正则表达式规则实现WordPress重定向需求

WordPress重定向正则规则合并方案

直接用以下正则即可同时满足你的需求,匹配**不包含完整json子串、不含.、不含?且结尾不是/**的URL:

^((?!json)[^.?])*[^/]$

规则拆解

  • ^:锚定URL的起始位置
  • ((?!json)[^.?])*:
    • [^.?]:匹配任意一个不是.或?的字符(允许/等其他合法URL字符)
    • (?!json):否定前瞻,确保从当前匹配位置开始,后续不会出现完整的json子串
    • *:允许上述模式重复0次或多次(适配不同长度的URL)
  • [^/]$:锚定URL的结束位置,确保最后一个字符不是/

匹配验证

  • 符合匹配要求的URL:
    • /wp-jsn/aberdeen:无json子串、无./?、结尾非/ → 匹配成功
    • /aberdeen:同上 → 匹配成功
  • 不符合要求的URL:
    • /wp-json/aberdeen:包含json子串 → 匹配失败
    • /aberdeen.css:包含. → 匹配失败
    • /aberdeen?foobar=1:包含? → 匹配失败

为什么之前的尝试无效

你用的[^.?|json]是单个字符的排除集,它会直接排除所有包含j/s/o/n单个字符的URL,而非仅排除完整的json子串,这和你的需求完全不符。否定前瞻(?!json)才是用来排除完整子串的正确方式。

内容的提问来源于stack exchange,提问作者GibsonFX

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 01:40:38