iOS 常用算法之设计一个算法,验证某字符是否为合法IPV4字符
Posted jgcho
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 常用算法之设计一个算法,验证某字符是否为合法IPV4字符相关的知识,希望对你有一定的参考价值。
浅析 : 一个IPV4字符由3个大于0小于255的数字 以及 3个点构成, 所有我们需要判断小数点数量是否满足条件, 以及小数点隔开的每部分是否满足条件即可.
思路:
1. 校验是否有3个小数点;
2. 以小数点将字符分割为4部分,校验每部分的字符;
3. 校验该部分转为int值之后(n), 满足0<n<255,而且首位字符不为0
代码如下:
1 - (BOOL)verify: (NSString *)ipV4Address 2 __block BOOL _filter = YES; 3 NSArray *array = [ipV4Address componentsSeparatedByString:@"."]; 4 if (array.count == 4) 5 [array enumerateObjectsUsingBlock:^(NSString *string, NSUInteger idx, BOOL * _Nonnull stop) 6 NSInteger intValue = [string intValue]; 7 if (intValue <= 0 || intValue >= 255) 8 _filter = NO; 9 *stop = YES; 10 11 if ([[string substringWithRange:NSMakeRange(0, 1)] integerValue] == 0) 12 _filter = NO; 13 *stop = YES; 14 15 ]; 16 else 17 return NO; 18 19 return _filter; 20
以上是关于iOS 常用算法之设计一个算法,验证某字符是否为合法IPV4字符的主要内容,如果未能解决你的问题,请参考以下文章