否定完整的正则表达式

Negate complete regex

强制某个 url 结构 "type/name" 并且我的工作正则表达式是:

([a-z]+\/?[a-z]+\/?)+

现在我想通过 preg_replace 从字符串中删除所有其他字符,从而否定上面的模式。 [^a-z] 之类的简单情况可以正常工作,但对于我的模式,我无法通过否定整个模式来使其正常工作。

你可以试试这个:

(?!([a-z]+\/?[a-z]+\/?)+)

即:

  • 前缀 (?!
  • 后缀 )