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ş:
Nasıl Python ile şimdiki zaman almak i...
Nasıl bir liste boyutunu almak için...
Nasıl NSString için bilimsel deneyler ...
Nasıl Gıt mevcut şube adı almak için?...
Nasıl MySQL kullanıcı hesaplarının bir...