SORU
15 NİSAN 2011, Cuma


Nasıl NSString alt almak için?

Eğer @"value:hello World:value", NSString bir değer almak istiyorsam ne yapmalıyım?

İstiyorum dönüş değeri @"hello World".

CEVAP
15 NİSAN 2011, Cuma


Seçenek 1:

NSString *haystack = @"value:hello World:value";
NSString *prefix = @"value:"; // string prefix, not needle prefix!
NSString *suffix = @":value"; // string suffix, not needle suffix!
NSRange needleRange = NSMakeRange(prefix.length,
                                  haystack.length - prefix.length - suffix.length);
NSString *needle = [haystack substringWithRange:needleRange];
NSLog(@"needle: %@", needle); // -> "hello World"

Seçenek 2:

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"^value:(. ?):value$" options:0 error:nil];
NSTextCheckingResult *match = [regex firstMatchInString:haystack options:NSAnchoredSearch range:NSMakeRange(0, haystack.length)];
NSRange needleRange = [match rangeAtIndex: 1];
NSString *needle = [haystack substringWithRange:needleRange];

Bu oldukça önemsiz bir durum için biraz abartılı olsa da olabilir.

Seçenek 3:

NSString *needle = [haystack componentsSeparatedByString:@":"][1];

Bu üç geçici dizeler ve bölme sırasında bir dizi oluşturur.


Tüm parçacıklar için araştırdım aslında dizede varsayalım.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Baby Big Mouth

    Baby Big Mou

    5 Mart 2013
  • chickenby

    chickenby

    2 HAZİRAN 2008
  • humanHardDrive

    humanHardDri

    16 Mart 2011