Re: Removing (foo) from a NSString
Re: Removing (foo) from a NSString
- Subject: Re: Removing (foo) from a NSString
- From: Peter <email@hidden>
- Date: Tue, 12 Jul 2011 22:32:21 +0200
Am 12.07.2011 um 21:42 schrieb Fritz Anderson:
> On 12 Jul 2011, at 2:23 PM, Eric E. Dolecki wrote:
>
>> What would be the easiest way to strip out parens and everything between
>> them from an NSString?
>>
>> Into The Fire (Live)
>> becomes
>> Into The Fire
>
> NSRegularExpression will do, but it is iOS-only (so far) and doesn't help you with nesting.
>
> It should be easy to walk the string with NSScanner.
Try this as a very primitive starter (no error checking, no warranty, nothing) - don't use this verbatim in production code, it will work for some simple cases but not for others (e.g. unmatched brackets etc.).
- (NSString *)throwOutBracketedStuffFrom:(NSString *)aString {
NSScanner *theScanner;
NSString *text = nil;
theScanner = [NSScanner scannerWithString:aString];
while ([theScanner isAtEnd] == NO) {
[theScanner scanUpToString:@"(" intoString:NULL] ;
[theScanner scanUpToString:@")" intoString:&text] ;
aString = [aString stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@%@", text, @")"] withString:@""];
}
return aString;
}
Read up on NSScanner.
Or try RegExKitLite, which I prefer._______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden