Quero excluir o texto após "(trading as"). Minha expressão regular até agora está como abaixo. Tentei um look forward negativo (?!\s\(trading as))
. Mas não está funcionando como esperado. Qualquer ajuda é bem-vinda.
import re
def extract_company_name(title):
match = re.findall(r'\b[A-Z0-9-](?:[A-Z0-9 \t&.-](?:\s*\(\d+\))?)*(?:\b|(?<=\)))', title)
return ','.join(match) if match else None
text = """TEST LIMITED (trading as FOO Limited) (in relation), TEST (2005) LTD, WINDING LIMITED (in liquidation)"""
print(extract_company_name(text))
Texto: TEST LIMITED (operando como FOO Limited) (em relação), TEST (2005) LTD, WINDING LIMITED (em liquidação)
Produção esperada: TEST LIMITED, TEST (2005) LTD, WINDING LIMITED