在我的iPhone应用程序用户可以输入特定的IP地址/ URL来连接到他们自己的服务器,我试图检查输入地址的有效性。因此,如果用户输入类似“1234”的内容,应用程序会发出错误信息,因为它不会像“IP地址”或URL一样“看起来”。 现在,我尝试使用下面的方法来实现:iPhone SDK:如何检查IP有效性?
- (BOOL)urlIsValid:(NSString *)address {
NSString *urlRegEx = @"(http|https)://((\\w)*|([0-9]*)|([-|_])*)+([\\.|/]((\\w)*|([0-9]*)|([-|_])*))+";
NSPredicate *urlTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", urlRegEx];
return [urlTest evaluateWithObject:address];
}
它我还以为是工作得很好,但现在显然即使我输入正确的IP地址的方法将返回“NO ”。 关于什么可能是错误的任何想法? 在此先感谢!
并没有真正提供任何帮助,因为它没有提供关于如何检查输入的IP地址符合一定的非标准任何文件... – Chris 2011-03-17 23:05:23
对不起。我没有完全明白你刚才所说的。你的意思是**某些标准的IP地址。你能否举一个例子来表明你认为有效和无效的内容。
我只是假设你想检查服务器的存在 – 2011-03-17 23:15:28
那么理论上用户可以在提供的文本框中输入任何东西作为IP地址。因此用户可以输入完全随机的内容,如“bla”或“$$”。在这种情况下,我需要一种方法来检查输入的文本是否实际上是IP地址的潜在候选者,然后我可以检查地址后面是否有实际的服务器。我希望这更好理解。 – Chris 2011-03-17 23:34:01