Mira a ver si te sirve esto :
Código SQL:
Ver originalSELECT CASE WHEN 'ASDF#1ñLK' LIKE '%#%'
AND SUBSTR('ASDF#1ñLK',INSTR('ASDF#1ñLK','#')+1,1) IN ('0','1','2','3','4','5','6','7','8','9')
THEN REPLACE('ASDF#1ñLK','#','@')
ELSE 'ASDF#1ñLK'
END
FROM DUAL