千家信息网

oracle判断手机号码是否合法

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,合法手机号码:都是11位数,并且以13、15、18开头的。create or replace function isLegal(phoneNumber in varchar2) return numb
千家信息网最后更新 2025年01月21日oracle判断手机号码是否合法

合法手机号码:都是11位数,并且以13、15、18开头的。

create or replace function isLegal
(phoneNumber in varchar2) return number
--返回0表示是合法,返回1表示是不合法
as
begin
if length(phoneNumber) !=11 then return 1;
elsif replace(translate(phoneNumber, '0123456789', '0'), '0', '') IS not NULL THEN
--dbms_output.put_line(phoneNumber || '不是[0-9]的数字序列');
return 1;
elsif substr(phoneNumber,1,2) not in ('13','15','18') then
--dbms_output.put_line('前二位数字不合法:'||substr(phoneNumber,1,2));
return 1;
else
--dbms_output.put_line('合法号码');
return 0;
end if;
exception when others then
--dbms_output.put_line('异常:');
return 1;
end isLegal;

0