用于段路径和负向前瞻的正则表达式

时间:2017-11-08 16:54:18

标签: regex wordpress

我需要为WordPress重定向编写正则表达式。 我只需要在某些情况下添加fra / fr。

  • www.mysite.com - > www.mysite.com/fra/fr
  • www.mysite.com/something/somethingelse - > www.mysite.com/fra/fr/something/somethingelse
  • www.mysite.com/fra/fr - > www.mysite.com/fra/fr (同)
  • www.mysite.com/uk/en - > www.mysite.com/uk/en (同)
  • www.mysite.com/uk/en/something - > www.mysite.com/uk/en/something (同)

我可以避免使用域名和^来启动字符串。

我试过了:

\/((?!uk\/en|fra\/fr).*)$

替代规则:

/fra/fr/$1

但它拦截'en'作为第1组,所以我得到:

www.mysite.com/uk/en -> www.mysite.com/uk/fra/fr/en

1 个答案:

答案 0 :(得分:0)

你需要使用锚点来确保你不匹配/uk/en中的第二个正斜杠:

^\/((?!uk\/en|fra\/fr).*)$

RegEx Demo