Снова об отрицании в регулярном выражении
Реализовать условие «строка не содержит подстроку» напрямую в регулярном выражении нельзя, но можно воспользоваться т.н. negative lookahead (которые уже были описаны в предыдущем сниппете):
<pre> <?php $pattern = "/^(?!(.*?)HTC)/"; // Совпадение будет со строкой не содержащей 'HTC' preg_match($pattern, "HTC A310 Explorer", $matches); print_r($matches); preg_match($pattern, "Нетбук Acer Aspire 3750", $matches); print_r($matches); ?> </pre>
Другой вариант реализации предложен на stackoverflow.com.
