2012-05-24 21 views
22

gelen alt dizeyi kaldırmak Merhaba ben dinamik gelen herhangi bir karakter kaldırmak zorundaiPhone dize

NSString *[email protected]"1,2,3,4"; 

gibi bir dize var. TÜM oluşumlarını kaldıracaktır @ ex

"3,"

cevap

72
NSString *[email protected]"1,2,3,4"; 
[str stringByReplacingOccurrencesOfString:@"3," withString:@""]; 

@ "3," str içinde.

Eğer sadece ilk geçtiği kaldırmak isterseniz @ "3,": Bu yardımcı olur

NSString* str = @"1,2,3,4"; 
NSRange replaceRange = [str rangeOfString:@"3,"]; 
if (replaceRange.location != NSNotFound){ 
    NSString* result = [str stringByReplacingCharactersInRange:replaceRange withString:@""]; 
} 

Umut.

+1

[str stringByReplacingOccurrencesOfString: @ "3," withString: @ ""]; – samfisher

+0

@samfisher düzenledi, teşekkürler – sonxurxo

+2

Bu sadece kaldırılacak öğenin listeden kısmen olduğunu bildiğinizde işe yarar. Örneğin, 4 sayısı kaldırılacak olursa, listenin sonunda olduğunu ve takip eden bir virgül olmadığını bilmeniz gerekir, böylece "4" yerine "4" yerine "4" ifadesini kullanırsınız. –

6
NSString *[email protected]"1,2,3,4"; 
    int numberToRemove = 4; 

str = [str stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%d",numberToRemove] withString:@""]; 
str = [str stringByReplacingOccurrencesOfString:@",," withString:@","]; 

Bu yardımcı olacaktır.

+2

Bu, @sonxurxo yanıtına yorum yaptığım sorunu çözüyor. –