отрицательная группа с выраженным выражением

Я пытаюсь, в регулярном выражении, сопоставлять и записывать любое слово, содержащее «шар», не имея перед ним «ноги» или «корзины». например, я хочу совместить «волейбол» и «dodgeball», но не «баскетбол» или «футбол». важно то, что я не могу использовать положительную группу, но отрицательную. что я пробовал:

[^(?:foot|basket)(ball)] !(?:foot|basket)(ball) 

нахождение противоположности довольно просто:

 (?:foot|basket)(ball) 

но это не то, что я ищу. Мне это нужно наоборот.

EDIT: это php, это команда «preg_replace».