AKG
AKG

Reputation: 408

how to get rid of heading and trailing white spaces from NSString

My NSString is like this:

NSString *myString =  
(  
“\n \n 24 K CLUB”,  
“\n \n 3 DOLLAR CAFE”,  
“\n \n A PEACH OF A PARTY”,  
“\n \n A ROYAL AFFAIR CAFE”,  
“\n \n AFFAIRS TO REMEMBER CATERERS”,  
“\n \n AFRIKAN DELI”  )

How to get rid of this new line character and white spaces, so that my new string will be like: newString:

(
"24 K CLUB”,  
"3 DOLLAR CAFE”,  
“A PEACH OF A PARTY”,  
“A ROYAL AFFAIR CAFE”,  
“AFFAIRS TO REMEMBER CATERERS”,  
“AFRIKAN DELI” 
) 

I tried :

myString = [myString stringByReplacingstringByReplacingOccurrencesOfString:@"\n" withString:@""];  
myString = [myString stringByReplacingstringByReplacingOccurrencesOfString:@" " withString:@""];

but unsuccessfully..getting error:

[__NSArrayI stringByReplacingOccurrencesOfString:withString:]: unrecognized selector sent to instance 0x7062200

Upvotes: 6

Views: 3946

Answers (2)

AechoLiu
AechoLiu

Reputation: 18408

How about stringByTrimmingCharactersInSet: method? By stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet], it can remove both ends of whitespace and newline characters.

Upvotes: 13

highlycaffeinated
highlycaffeinated

Reputation: 19867

Your initial declaration of myString is declaring an NSArray, not a NSString. Your calls to stringByReplacingstringByReplacingOccurrencesOfString: withString: should work on the individual NSStrings. Either iterate the array yourself (see here) to trim the strings, or use makeObjectsPerformSelector: (see here) to handle it.

Upvotes: 0

Related Questions