Spróbuj tego:
(?: (?:and or|and|a o|company|co|c o|dba|d b a))+(?!\S)/i
Podobnie jak @mathematical.coffee, zacząłem od wyodrębnienia spacji wiodącej i zastąpienia spacji końcowej znakiem wyprzedzającym — w tym przypadku ujemnym patrz w przyszłość dla niebiałej spacji postać. W ten sposób zadziała, nawet jeśli token jest ostatnim w ciągu i nie ma po nim spacji. Ale najważniejszą zmianą jest zastępowanie dwóch lub więcej meczów na raz, gdy tylko jest to możliwe.