0

これは恥ずかしいです。コアデータやテキスト ファイルを使用したくありません。このコードを書くための最短の方法が必要です。

名前 (「John」、「Matthew」、「thomas」、「isaac」、「bible」、「Mayan」、「2012」、その他の名前)

このコードは非常に時間がかかり、大量のメモリ、ダウンロード時間、およびスペースの浪費を浪費します。お勧めしません。10,000 行。

 NSString *selectives = Name.text;
 if ([selectives rangeOfString:@"John"].location != NSNotFound) {
    //
 }
 if ([selectives rangeOfString:@"Matthew"].location != NSNotFound) {
     //
 }

2番。このコードは機能しません。ここで間違っていることはわかりません。道に迷いました。私は助けが必要です!

    NSString *string = Name.text;
    NSString *NameMe = [NSString stringWithString:@"Jake", "miller", "thomas", "isaac"];

    if([string rangeOfString:NameMe].location !=NSNotFound) 
    {   
       // 
    }

これを書く良い方法はありますか?どのように書くのですか?私はこれが苦手です。

4

1 に答える 1

1

最初のケースでは、高速列挙を使用してコードを短縮できます。

NSArray *searchStrings = // Set up your search strings however you want
NSString *selectives = Name.text

for (NSString *searchString in searchStrings) {
    if [selectives rangeOfString:searchString].location != NSNotFound {
        // Your processing here
    }
}

2番目のケースでは、この行は間違っています

NSString *NameMe = [NSString stringWithString:@"Jake", "miller", "thomas", "isaac"];

適切に形成された文字列を渡していません。@"Jake"は有効ですが、残りは@"..."セクションの外にあるため、そうではありません。

于 2011-09-03T03:34:41.253 に答える