2012-04-22 156 views
0

我正在制作一个文字游戏,并且我终于找到了我的游戏中最重要的部分之一,比较部分。比较,从标签获取字符串

我得到这个标签,当它启动时,它将被隐藏起来,必须被猜测的单词在随机的单词生成器中显示。例如,词是:车库

现在,我的游戏我的字与输入现在我已经用NSString的整个单词这样做比较,但我想它的每一个字母进行比较。我希望能够证明,如果输入有G作为第一个字母,就像车库一样。我希望它做一些事情。

我想知道这是否可能以及您将使用哪种方法。我正在考虑制作6个字符串,因为我的所有随机单词都有6个字母,然后将单词分解为6个字符串和输入,然后比较字符串?

希望有人有一些有用的提示或示例代码感谢

+0

Woudn't这样的话题回答你的问题? http://stackoverflow.com/questions/4158646/most-efficient-way-to-iterate-over-all-the-chars-in-an-nsstring – Stian 2012-04-22 12:06:01

+0

不,我没有得到那个帖子对不起 – user1342428 2012-04-22 12:10:25

回答

0

因此,假设您的字符串被猜测...

NSString *stringToGuess = @"GARAGE"; 

和你检查,看它是否开始“GA”

NSString *myString = @"GA"; 

你将与hasPrefix检查:

if ([stringToGuess hasPrefix:myString]) { 
    // <stringToGuess> starts with <myString> 
} 

NSString的文档描述了很多关于任何字符串相关的整洁方法。

+0

奥克感谢这个生病检查出来!谢谢 – user1342428 2012-04-22 13:13:57

0

hasPrefix会让你知道一个字符串是否以另一个字符串开头。还有characterAtIndex。你可以使用它从每个字符串中获取一个字符并将其与另一个字符进行比较。

你可以写,将采取一个整数索引和索引的两个字符串比较的方法:

- (BOOL) compareStringOne: (NSString *) stringOne 
    toStringTwo: (NSString *) stringTwo 
    atIndex: (NSUInteger) index; 
{ 
    if ([stringOne length] < index+1 || [stringTwo length] < index+1) 
    return FALSE; 
    return [stringOne characterAtIndex: index] == [stringTwo characterAtIndex: index]; 
}