正则表达式包括除一个以外的URL类型

时间:2015-11-05 22:16:58

标签: regex

如何编写正则表达式以包含所有包含以下内容的URL:

/this/that/

除了:

/this/that/99-text

这就是我的尝试:

/this/that/
^www.domain.com//this/that/99-text

2 个答案:

答案 0 :(得分:2)

试试这个:

\/this\/that\/(?!99-text)

https://regex101.com/r/yK4zH1/1

它使用否定前瞻来确保其后面没有99-text

如果您想在/this/that之后使用可选正斜杠,则可以执行以下操作:

\/this\/that\/?(?!\/?99-text)

https://regex101.com/r/pN3cJ6/1

要采取额外步骤,如果它有效/this/that99-text,您可以执行以下操作:

\/this\/that(?:\/(?!99-text)|(?!\/99-text))

https://regex101.com/r/yV8cO8/1

答案 1 :(得分:0)

使用否定前瞻:

$URI="/this/that/99-text";

if( preg_match_all("#/this/that(?!/99-text)#", $URI,$matches) )
{
  var_dump($matches);
}
else
{
 echo 'No matches found.';
}