Leerzeichen / Zahlen / Großbuchstaben am Anfang und Ende eines NSString’s entfernen.

Von am 17.02.2012 | No Comments

Problem: Jeder kennt es und jeder braucht es irgend wann einmal, das entfernen von bestimmen Zeichen am Anfang und Ende eines NSStrings. Am meisten und gängigsten ist wohl das entfernen von Leerzeichen. Wie Ihr diese und weiter Zeichen entfernt, zeige ich euch in folgendem Beispiel.

Lösung: Zur Entfernung der gewünschten Zeichen, könnt Ihr einfach auf die NSString Funktion “stringByTrimmingCharactersInSet” zurückgreifen. Diese Funktion erwartet als Übergabeparameter eine Variable des Typs “NSCharacterSet”. Wie Ihr in der Dokumentation nachlesen könnt gibt es hier Zahlreiche Funktionen, welche für bestimmte Zeichengruppen, den nötigen “character set” zurück liefern.

Der Quellcode um Leerzeichen zu entfernen würde wie folgt aussehen:

NSString *test = @" Der alte Blog www.jannikegger.com wird durch unseren \"Blog & Tutorials\" Bereich, hier auf www.bitlab-apps.de, erstzt. ";
NSLog(@"whitespaceCharacterSet: -%@-", [test stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]);
// NSLog returns: whitespaceCharacterSet: -Der alte Blog www.jannikegger.com wird durch unseren "Blog & Tutorials" Bereich, hier auf www.bitlab-apps.de, erstzt.-

Wie Ihr in der Doku seht, könnt Ihr noch für viele weitere Zeichentypen diese Code anwenden. Hier der Auszug aus der Apple-Doku:

+ alphanumericCharacterSet
+ capitalizedLetterCharacterSet
+ controlCharacterSet
+ decimalDigitCharacterSet
+ decomposableCharacterSet
+ illegalCharacterSet
+ letterCharacterSet
+ lowercaseLetterCharacterSet
+ newlineCharacterSet
+ nonBaseCharacterSet
+ punctuationCharacterSet
+ symbolCharacterSet
+ uppercaseLetterCharacterSet
+ whitespaceAndNewlineCharacterSet
+ whitespaceCharacterSet