2012-04-22 8 views
0

私は単語ゲームを作っています。私は最終的に私のゲームの最も重要な部分の1つ、比較部分に来ました。比較、ラベルから文字列を取得

ランダムな単語ジェネレーターで表示されていると推測される単語で起動すると、このラベルは表示されません。たとえば、単語は次のとおりです:GARAGE

私のゲームでは、入力と単語を比較する必要があります。これは既に単語全体をNSStringで処理しましたが、すべての文字を比較したいのです。私は入力にガレージのように最初の文字としてGがあることを示すことができるようにしたい。私は何かをしたい。

これが可能かどうか、どの方法を使用するかを知りたい。私はすべての私のランダムな単語が6文字を持っているので、6文字列を作成することを考えていたし、6文字列と入力を同様にして文字列を比較する単語を壊す?

ホープ誰かがいくつかの有用なヒントやサンプルコードのおかげ

+0

このようなトピックは、あなたの質問に答えるWoudn't:

あなたは整数のインデックスを取得し、そのインデックスに2つの文字列を比較するだろう方法を書くことができますか? http://stackoverflow.com/questions/4158646/most-efficient-way-to-iter-over-all-the-chars-in-an-nsstring – Stian

+0

いいえ私はその投稿をごめんなさい申し訳ありません – user1342428

答えて

0
だから、あなたの文字列をと仮定すると推測される

...

NSString *stringToGuess = @"GARAGE"; 

を持っており、あなたはそれが

「GA」を開始したかどうかをチェックし、
NSString *myString = @"GA"; 

あなたはhasPrefixでそれを確認します:

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

NSStringのドキュメンテーションには、関連する文字列のためのたくさんのきちんとしたメソッドが記述されています。

+0

おかげで、この確かめます!ありがとうございました – user1342428

0

hasPrefixは、ある文字列が別の文字列で始まるかどうかを教えてくれます。 characterAtIndexもあります。それを使って、各文字列から1文字を取得し、それを他の文字と比較することができます。

- (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]; 
}