判定是不是手机号码

-(BOOL)regexTel

{

if ( self == nil || [self length] == 0 )

{

return NO;

}

NSString *regex = @"^((13[0-9])|(14[0-9])|(15[0-9])|(17[6-8])|(1705)|(1709)|(18[0-9]))\\d{8}$";

NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];

return [pred evaluateWithObject:self];

}

self:NSString

时间: 2024-08-08 01:15:13

判定是不是手机号码的相关文章

如何进行软件测试需求分析(两图一文档)

1.软件测试明确需求范围 了解该需求是为了解决用户的什么问题 功能性需求:产品必须有的功能 非功能性需求:是否美观,用户体验,稳定性,易用性等 最容易忽略的一点:明确的需求背后所隐藏的需求(例如登录,明确的需求是,正确输入用户名,密码,才能登录.隐性需求:用户名字符类型,长度,是否可为空:密码字符类型,长度等) 将问题在需求阶段暴露的成本最小 2.画业务流程图(流程图) 根据需求中规定的业务流程 各业务流程分支的确定 由于业务原因规定不可使用的业务流程 3.功能点整理(思维导图) 业务功能:需求

利用Tesseract识别58同城图片式手机号码

58同城上的手机号码大多数是图片格式,目的也是防止爬虫软件抓取,但作为一个专门开发爬虫的程序猿,必须拿下它才能安心,否则睡觉做梦也会想着该怎么破这该死的图片号码的! 这里我们利用Google的开源项目:Tesseract-ocr(项目地址:https://github.com/tesseract-ocr) 其实,Tesseract的网上的教程其实有很多,关于它的介绍,我在这里就不说了,直接讲重点! 先是要初始化Tesseract,这里我们用默认的识别库,根据58同城号码图片的特点,我们这样初始化

程序运行状态的判定

怎么知道手机的一个程序是否在运行,又或是在不在前台运行呢?下面一个方法就可以判定了. /** * 返回app运行状态 * 1:程序在前台运行 * 2:程序在后台运行 * 3:程序未启动 * 注意:需要配置权限<uses-permission android:name="android.permission.GET_TASKS" /> */ public int getAppSatus(Context context, String pageName) { ActivityM

POJ C程序设计进阶 编程题#3:运算符判定

编程题#3:运算符判定 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB 描述 两个整数 a 和 b 运算后得到结果 c.表示为:a ? b = c,其中,?可能是加法 +,减法 -,乘法 *,整除 / 或 取余 %.请根据输入的 a,b,c 的值,确定运算符.如果某种运算成立,则输出相应的运算符,如果任何运算都不成立,则输出 error. 例如: 输入: 3,4,5 输出: er

混合图的欧拉回路判定

对于有向图和无向图的欧拉回路判定,很容易做到.那对于混合图呢?? 混合图就是图中既存在无向边又存在有向边的图. 至于解法: 转载自这里 把该图的无向边随便定向,计算每个点的入度和出度.如果有某个点出入度之差为奇数,那么肯定不存在欧拉回路.因为欧拉回路要求每点入度 = 出度,也就是总度数为偶数,存在奇数度点必不能有欧拉回路. 好了,现在每个点入度和出度之差均为偶数.那么将这个偶数除以2,得x.也就是说,对于每一个点,只要将x条边改变方向(入>出就是变入,出>入就是变出),就能保证出 = 入.如果

NEFU120 梅森素数【Lucas-Lehmer判定】

题目链接: http://acm.nefu.edu.cn/JudgeOnline/problemshow.php?problem_id=120 题目大意: 给一个数p,若Mp = 2^p - 1是梅森素数,则输出"yes",否则输出"no". 思路: 这道题p小于62.Mp就小于2^62-1.如果直接进行素数判别会比较慢,用筛法的话数据量 又会很大.所以这里用了Lucas-Lehmer判定法则. Lucas-Lehmer判定法则具体步骤: 如果要判定的整数位Mp =

Java虚拟机:如何判定哪些对象可回收?

版权声明:本文为博主原创文章,转载请注明出处,欢迎交流学习! 在堆内存中存放着Java程序中几乎所有的对象实例,堆内存的容量是有限的,Java虚拟机会对堆内存进行管理,回收已经"死去"的对象(即不可能再被任何途径使用的对象),释放内存.垃圾收集器在对堆内存进行回收前,首先要做的第一件事就是确定这些对象中哪些还存活着,哪些已经死去.Java虚拟机是如何判断对象是否可以被回收的呢? 引用计数算法        引用计数算法的原理是这样的:给对象添加一个引用计数器,每当有一个地方引用它时,计

1065 最小正子段和 二分答案 + 判定

http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1065 我的思路比较笨,我是直接二分那个答案mid 然后进行一次O(nlogn)的判定,如果能找到一个区间的和比mid小的,(当然这个区间的和也是要大于0),那就return true 进行判断如下: 处理出前缀和dp[i],对于每一个i 目标是:在前i - 1个中,查看是否有这样的一个x,使得,dp[i] - x    <=   mid,&& dp[i] -

简单聊聊java中如何判定一个对象可回收

背景 说到java的特性,其中一个最重要的特性便是java通过new在堆中分配给对象的内存,不需要程序员主动去释放,而是由java虚拟机自动的回收.这也是java和C++的主要区别之一:那么虚拟机是如何实现自动回收的呢?它的基本回收算法又是什么呢?  这篇随笔先不介绍这些~ ~,熟话说 饭要一口一口地吃,路要一步一步地走嘛,这篇随笔主要讲解的是回收的前提:如何判断一个对象可以回收. 对java中如何判断一个对象可以回收的一般性认识 在没有学习<深入理解java虚拟机>之前,对于java中判断一