2010-04-05 13 views
30

załóżmy mam ciągJak zamienić znak w NSString bez wstawiania spacji?

NSString* myString = @"Hello,"; 

Jak mogę usunąć przecinek bez pozostawiania przestrzeni? Próbowałem:

NSString* newString = [myString stringByReplacingOccurrencesOfString:@"," withString:@""]; 

i

NSString* newString = [myString stringByTrimmingCharactersInSet:[NSCharacterSet punctuationCharacterSet]]; 

Ale oba są pozostawiając przestrzenie.

+8

No one nie jest, coś innego się dzieje. –

+2

Jak sprawdzasz, czy jest miejsce? Czy możesz pokazać ten kod? Założę się, że problem istnieje. –

+0

Ja tokenizuję moje struny. Oddzieliłem cześć i dwa oddzielne żetony. Podczas budowania sznurka z żetonów było miejsce pomiędzy Cześć i –

Odpowiedz

101

ja po prostu zabrakło następujących jako test

NSString * myString = @"Hello,"; 

NSString * newString = [myString stringByReplacingOccurrencesOfString:@"," withString:@""]; 

NSLog(@"%@xx",newString); 

I dostać 2010-04-05 18:51:18.885 TestString[6823:a0f] Helloxx jako wyjście. Nie ma już miejsca.

0
NSString *newString = [myString substringToIndex:5]; 

To zapewni, że istnieją tylko 5 znaków w ciąg, ale pamiętaj, że będzie to również wyjątek, jeśli nie są przynajmniej 5 znaków napisu na początku. Jak sobie z tym radzisz? Czy jest wyświetlany użytkownikowi? Czy jest on zapisywany do pliku? Kod, który wysłałeś, nie odtwarza błędu, więc może powinieneś opublikować kod, z którym masz problem.

0

inny sposób można korzystać .. od stringByReplacingCharactersInRange

token = [token stringByReplacingCharactersInRange:NSMakeRange(i, 1) withString:@"*"]; 

"żeton" to chce zastąpić NSString i "I" to chcesz zmienić NSString przez "*"

Powiązane problemy