import re
regex = re.compile(r"^(.+)\=CellGet(.+)\(\'(.*)\'(.*)d_Plano, (\'.+\')", flags=re.MULTILINE)
test_str = ("nAdesaoInformatica=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Adesão do contrato de informática (QUANTUM)');\n"
"nCarenciaDias=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Carência (dias)');\n"
"nComissaoVistaNovo=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Comissão à vista s/ valor novo (máximo 6%)');\n"
"nComissaoVistaRefin=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Comissão à vista s/ valor refinanciamento nas Lojas');\n"
"nComissaoProducao=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Comissão de Gestão da Produção');\n"
"nComissaoProRata=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Comissão pró rata temporis s/valor novo');\n"
"nComissaoTotal=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Comissão Total');\n"
"sConsignadoFederal=CellGetS ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Consignado Federal? (Sim/Não)');\n"
"nCustoEntidConsig=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Custo da Entidade Consignatária');\n"
"nCustoTedDoc=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Custo de TED/Vale Postal/DOC/OP');\n"
"nCustoPortalConsig=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Custo do portal de consignação');\n"
"nCustoCanalConsig=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Custo mensal de manutenção do canal de consignação');\n"
"nNumeroContratos=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Número de contratos');\n"
"nPerdaEsperada=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Perda Esperada (Outros)');\n"
"nProbabilidada=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Probabilidade liquidação antecipada (meses)');\n"
"nProderj=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'PRODERJ (Processamento de Dados)');\n"
"nProducao=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Produção em R$');\n"
"nProporcaoContratado=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Proporção do Valor Contratado');\n"
"nQuantidadePmt=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Quantidade de PMTs');\n"
"nRentabilidadeAcionista=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Rentabilidade mínima ao acionista (% a.a.)');\n"
"nSeguroPrestamista=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Seguro Prestamista');\n"
"nTaxa=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Taxa (a.m.)');\n"
"nZetrasoft=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Valor pago a Zetrasoft');\n"
"nValorContratado=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Valor Contratado');\n"
"nValorFinanciado=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Valor Financiado');\n"
"nFunding=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Funding (% DI)');\n"
"nCdi=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'CDI');\n"
"nCustoOportunidade=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Custo de oportunidade (CDI atual a.a.)');\n"
"nPisCofins=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'PIS/COFINS');\n"
"nIndiceBasileia=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Indice de Basiléia (médio)');\n"
"nValorNovo=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Valor Novo');\n"
"nValorRefinaciado=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Valor Refinanciado');\n"
"nPonderadorCapital=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Ponderador de capital');\n"
"sDataCurvaBmf=CellGetS ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Data Curva BM&F');\n"
"nIR=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Imposto de Renda');\n"
"nAtivosRisco=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Ativos ponderados pelo Risco');\n"
"nCapitalMinimoOp=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Capital mínimo exigido para a operação');\n"
"nResultadoLiqAcionista=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Resultado líquido mínimo exigido para atender ao acionista (a.a.)');\n"
"nResultadoBrutAcionista=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Resultado bruto mínimo exigido para atender ao acionista (antes do IR & CSLL) (a.a.)');\n"
"nTirMinimaAcionista=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'TIR mínima para remunerar o acionista');\n"
"nCustoFixoMensal=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Custo fixo mensal R$');\n"
"nCustoPmt=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Custo por PMT %');\n"
"nMultiplicadorRentab=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Multiplicador de rentabilidade');\n"
"nValorFaixaContratacao=CellGetN ('Premissas_Consolidado', d_Convenio, d_Canal_Originacao, d_Plano, 'Valor da Faixa de Contratação');")
subst = "CellPut\\2(\\1, 'Premissas_Consolidado_Historico' \\4sDescPlano, sVersao, \\5"
result = regex.sub(subst, test_str)
if result:
print(result)
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html