a814123
814123
2018-05-04 13:49
采纳率: 96.3%
浏览 1.4k

delphi 正则表达式验证手机号与固话?

函数返回,判断一个字符串是手机号还是固话号,用正则匹配,是手机号返回,否则返回空,会正则的老师帮个忙/

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • caozhy
    已采纳
     先自行下载一个 PerlRegEx
    用下面的代码
    var
      reg: TPerlRegEx;
    begin
      reg := TPerlRegEx.Create(nil);
      reg.Subject := '13701271023';
      reg.RegEx := '1(3|5|7|8)\d{9}';
      if reg.Match then
        ShowMessage('是手机')
      else
        ShowMessage('不是');
      FreeAndNil(reg);
    end;
    
    电话号码,要看你的格式,有没有横杠
    下面这个匹配有横杠的,替换到上面的正则就可以了
    \d{3,4}\-\d{7,8}
    这个能匹配3~4位区号-7~8位电话,比如 010-12345678
    
    点赞 评论
  • caozhy

    如果不想用PerlRegEx,也可以用 ReguarExpressions的TRegEx,这是delphi自带的,代码类似

    点赞 评论

相关推荐