import re
texts = [ "LP, bar, company LLP, foo, LLP" , "LLP, bar, company LLP, foo, LP" , "LLP,bar, company LLP, foo,LP" ]
for text in texts:
result = ' ' .join ( re .sub ( r"^(LL?P)\s *,|,\s *(LL?P)$" , r" \1 \2 " , text) .split ( ) )
print ( "'{}' -> '{}'" .format ( text, result) )
aW1wb3J0IHJlCnRleHRzID0gWyJMUCwgYmFyLCBjb21wYW55IExMUCwgZm9vLCBMTFAiLCJMTFAsIGJhciwgY29tcGFueSBMTFAsIGZvbywgTFAiLCJMTFAsYmFyLCBjb21wYW55IExMUCwgZm9vLExQIl0KZm9yIHRleHQgaW4gdGV4dHM6CglyZXN1bHQgPSAnICcuam9pbihyZS5zdWIociJeKExMP1ApXHMqLHwsXHMqKExMP1ApJCIsIHIiIFwxXDIgIiwgdGV4dCkuc3BsaXQoKSkKCXByaW50KCIne30nIC0+ICd7fSciLmZvcm1hdCh0ZXh0LCByZXN1bHQpKQ==
stdout
'LP, bar, company LLP, foo, LLP' -> 'LP bar, company LLP, foo LLP'
'LLP, bar, company LLP, foo, LP' -> 'LLP bar, company LLP, foo LP'
'LLP,bar, company LLP, foo,LP' -> 'LLP bar, company LLP, foo LP'