将字符串与 @" " 的任何排列进行比较

comparing a string to any permutations of @" "

我想比较字符串 a1,如果 a1 包含 @" " 的任何排列,则得到肯定的答案。我怎样才能做到这一点?我尝试了以下但它不起作用。

NSString *a1;

BOOL isequals=([a1 compare:@" " options:NSCaseInsensitiveSearch range:NSMakeRange(0,2)]==NSOrederedSame);

NSString *a1;
NSRange range = [a1 rangeOfString:@" "];
if (range.location == NSNotFound)
{
   //not equal
}

编辑:使用这个更符合您的要求

BOOL isEqueal  = (range.location != NSNotFound);

希望对您有所帮助。

NSString *string;
if ([string rangeOfString:@" "].location == NSNotFound) {
   //Do your stuff
} else {
   //Do your stuff
}

关键是注意到 rangeOfString: returns 一个 NSRange 结构,并且 the documentation says 它 returns 结构 {NSNotFound, 0}


如果您使用 iOS 8 或 OS X Yosemite,您现在可以:

NSString *string;
if ([string containsString:@" "]) {
   //Do your stuff
} else {
   //Do your stuff
}