› Fóruns › SQL e PL/SQL › Dúvida Expressões Regulares – Replace (REGEXP_REPLACE) › Dúvida Expressões Regulares – Replace (REGEXP_REPLACE)
Oi gsmdf,
Com expressões regulares, você deve encontrar padrões nos valores a serem trabalhados. Não é porque funciona pra um caso que vai funcionar pra todos, então se os valores que você está trabalhando não tiverem um padrão bem definido desista das regexp… 🙂
Eu me equivoquei na outra mensagem dizendo que o comando iria parar no primeiro “(” após o INSERT, ele pára no ultimo. Pra isto, seguindo o padrão dos dois valores que você passou, dá prafazer desta forma:
regexp_replace(texto,'DROP([[:print:]|[:cntrl:]])*INSERT INTO([[:print:]])*([ |[:cntrl:]])*(')
Também dá pra seguir o mesmo raciocínio do Braga, se o que você realmente quer é só o conteúdo após o ultimo INSERT.
Abraços,