省略一种模式?

时间:2010-02-21 00:29:58

标签: php regex

有没有办法告诉preg_match_all找到匹配某个模式的所有序列,但是省略了另一种模式?

例如

<a>computers</a>
<a>books</a>
<a>pens</a>

我想匹配书籍和笔,但不是电脑。

所以使用:

preg_match_all('/<a>.*?<\/a>', $string, $array);

不会。

希望得到一些帮助。谢谢!

1 个答案:

答案 0 :(得分:4)

您可以使用前瞻assertions

/<a>(?!computer).*?<\/a>/