如何在iOS sdk中单独读取字符串中的字符?

mon*_*ish 1 objective-c

我有这样的字符串:

 NSString *str = @"Helloworld.123 456";
Run Code Online (Sandbox Code Playgroud)

我需要从字符串中逐个获取字符并检查它是否是数值.

有没有预定义的方法呢​​?

Vla*_*mir 5

要从字符串中获取字符,您可以使用-characterAtIndex:方法.而NSCharacterSet类允许您轻松地检查,如果给定的字符是一个数字:

NSCharacterSet* numSet = [NSCharacterSet decimalDigitCharacterSet];
for (int i = 0; i < [str length];++i)
   if ([numSet characterIsMember: [str characterAtIndex:i]])
   // i-th character is a decimal digit
Run Code Online (Sandbox Code Playgroud)

PS如果您的任务更通用,那么只需检查每个单个字符,那么也可能有一个更通用的内置方法来完成该任务......