CREATE OR REPLACE FUNCTION WSW(parameter VARCHAR2) RETURN DATE IS val DATE; BEGIN IF (REGEXP_INSTR(parameter,'^d{4}-d{1,2}$')=1) then RETURN TO_DATE(parameter,'yyyy-MM'); end if; IF (REGEXP_INSTR(parameter,'^d{4}-d{1,2}-d{1,2}$')=1) THEN RETURN TO_DATE(parameter,'yyyy-MM-dd'); end if; RETURN sysdate; EXCEPTION WHEN OTHERS THEN RETURN sysdate; END;