NSString * str=[zoneDict objectForKey:@"name"];
NSLog(@"==========string zone::==========%@",str);
// str="(GMT +3:00) Baghdad, Riyadh, Moscow, St. Petersbur";
上記の文字列から3:00の値を取得するにはどうすればよいですか?iPhoneアプリケーションでNSStringから整数値を取得するにはどうすればよいですか?
NSString * str=[zoneDict objectForKey:@"name"];
NSLog(@"==========string zone::==========%@",str);
// str="(GMT +3:00) Baghdad, Riyadh, Moscow, St. Petersbur";
上記の文字列から3:00の値を取得するにはどうすればよいですか?iPhoneアプリケーションでNSStringから整数値を取得するにはどうすればよいですか?
NSString *str = @"(GMT -3:00) Baghdad, Riyadh, Moscow, St. Petersbur";
NSRange endRange = [str rangeOfString:@")"];
NSString *timeString = [str substringWithRange:NSMakeRange(5, endRange.location-5)];
NSRange separatorRange = [timeString rangeOfString:@":"];
NSInteger hourInt = [[timeString substringWithRange:NSMakeRange(0, separatorRange.location)] intValue];
NSLog(@"Hour:%d",hourInt);
ありがとうございました..... –
NSIntegerは実際にはintではありません^ _ ^私は実際には長いと思います。 –
ではなく、文字列からのオフセット時間を抽出しようとしている、あなたはzoneDict
で、実際のタイムゾーンのデータを格納することができどのような方法はありますか?たとえば、NSTimeZone
のインスタンスを代わりに格納することができます。
文字列がすべてある場合は、NSRegularExpression
オブジェクトを使用して、代わりに正規表現を使用して関連情報を抽出できます。
あなたがしようとしていることをさらに説明できれば、あなたが望むものを達成する別の方法があるかもしれません。
私は-[NSString componentsSeparatedByString]:
NSString *str = @"(GMT -3:00) Baghdad, Riyadh, Moscow, St. Petersbur";
NSArray *myWords = [myString componentsSeparatedByString:@")"];
NSString *temp1 = [myWords objectAtIndex:0];
if ([temp1 rangeOfString:@"-"].location == NSNotFound) {
NSArray *temp2 = [temp1 componentsSeparatedByString:@"+"];
NSString *temp3 = [temp2 objectAtIndex:1];
NSLog(@"Your String - %@", temp3);
}
else {
NSArray *temp2 = [temp1 componentsSeparatedByString:@"-"];
NSString *temp3 = [temp2 objectAtIndex:1];
NSLog(@"Your String - %@", temp3);
}
を使用したい出力:(あなたは '3' のみを抽出することを余儀なくされている場合)
Your String - 3:00
が間違っています。値が+ GMT値で変更された場合、コードは機能しません。 –
ええ、文字列の中で - または+をチェックする必要があると書いてあります。私は今解決しています – Hiren
正規表現を使用するには、私の見解では、より良いオプションです。正規表現の文字列には "\ d?"しかし、それについて私を引用しないでください、あなたは正確な文字列を検索する必要があります。おそらく、ここにいる誰かが正確な文字列を提供するかもしれません。
まあ、私はあなたが本当に整数を必要としないと思っています。符号(+)、整数時間(3)、整数分(00)が必要です。これは正しいです?また、文字列を解析する前に、 'zoneDict'の型は何ですか?タイムゾーンのデータ構造は、通常、文字列だけでなく、より使いやすい形式でオフセットを提供しますが、 'zoneDict'には文字列しかありませんか? – CRD