Для того чтобы исключить слово из регулярного выражения, или набор слов, или даже целое предложение, используем конструкцию:
((?!word1|word2).)*
Результатом стало вот такое правило:
array( "CONDITION" => "#^/(?!404\.php|novelty|action|discounts|search)#", "RULE" => "", "ID" => "bitrix:catalog", "PATH" => "/catalog/index.php", )