欢迎光临
我们一直在努力

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)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。