oc中判断是否是一个合法手机号

 我来答
陌路卖酱油
2015-08-01 · TA获得超过103个赞
知道小有建树答主
回答量:133
采纳率:0%
帮助的人:117万
展开全部
要看你手机号怎么定义的,我认为如果是NSNumber类型,只需要看它长度就可以了,如果是NSString,就要转成char比对是不是数字的asc码了。当然个人认为这些单独写一个方法比较好。
如果有别的比对要求,比如开头151,152,,,,什么的,建议把这些存一个数组,然后切割NSString字符串,重写isEqualToString,遍历比较。
life会哭的信纸
2015-08-14
知道答主
回答量:1
采纳率:0%
帮助的人:1218
展开全部
//7.合法手机号 要求:手机号以1开头总共有11位 并且手机号中不能有除了数字以外的其他字符

-(BOOL)isPhoneNumberOfString:(NSString *)phoneString{

NSMutableString *str3=[[NSMutableString alloc]init];

int count=0,sum;

NSString *str1=[phoneString substringToIndex:1];

if ([str1 isEqualToString:@"1"]==YES) {

++sum;

[str3 appendString:@"第一个号码为:1"];

// BOOL ret=[[str3 substringWithRange:NSMakeRange(0, 1)]isEqualToString:@"1"];

}

//

for (NSUInteger i=0; i<[phoneString length]; i++) {

unichar c=[phoneString characterAtIndex:i];

int set=(int)c-48;

if(c>='0'&&c<='9'){

++count;

NSLog(@"%d",count);

}

}

NSLog(@"(7)手机号码全为数字的位数:%d %@",count,str3);

NSLog(@"如何号码符合返回1:如何号码不符合返回0:%d",(count==11&&sum==1));

return (count==11&&sum==1);

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式