我想檢查一個輸入的電子郵件地址是否有效。我已經創建了以下功能。該功能已成功創建,但是當我嘗試運行該功能時,我無法獲得所需的輸出。我在這個PLSQL函數中做了什麼錯誤?
CREATE OR REPLACE FUNCTION email_validate(p_email IN varchar2)
return BOOLEAN
is
emailregexp constant varchar2(1000):= '^[a-z0-9._-][email protected][a-z0-9.-]+\.[a-z]{1,10}$';
BEGIN
IF regexp_like(p_email,emailregexp ,'i') THEN
RETURN true;
ELSE
RETURN false;
END IF;
END;
我想檢查輸出的方式是:
DECLARE
result BOOLEAN;
BEGIN
result:= email_validate('[email protected]');
dbms_output.put_line(result);
END;
對PLSQL正則表達式不太確定,但是您應該可以跳過組中的最後一個'-'字符 – devio
該函數已成功創建,但我無法調用函數,例如我想運行該函數並查看True或假。 「 – indexOutOfBounds
」dbms_output.put_line不會重載以接受布爾參數。「 http://stackoverflow.com/a/13560073/21336 – devio