2016-09-25 4 views
-1

У меня есть NSString с круглыми скобками. Я хотел бы удалить текст внутри круглых скобок. Как это сделать? (В Objective-C)удалить строку между круглыми скобками [iOS]

Пример Строка:

Tach Auch. (шкафчики Ruhrdeutsch) Und Hallo!

Я хотел бы Удалить «(lockeres Ruhrdeutsch)» из строки, но Strings я должен редактировать всегда разные. Как удалить строку между «(» и «)»?

С наилучшими пожеланиями

ответ

2

использовать регулярные выражения:

NSString *string = @"Tach auch. (lockeres Ruhrdeutsch) Und Hallo!"; 
NSString *filteredString = [string stringByReplacingOccurrencesOfString:@"\\(.*\\)" 
                  withString:@"" 
                   options:NSRegularExpressionSearch range:NSMakeRange(0, string.length)]; 
NSLog(@"%@", filteredString); 

Если вы хотите, чтобы рассмотреть также символ пробела после закрывающей скобки, добавьте \\s? в конце шаблона регулярного выражения.

1

Вот функция, которую вы можете позвонить, чтобы получить необходимую строку:

-(NSString*)getStringWithBlankParaFrom:(NSString*)oldStr{ 

    NSArray*strArray1=[oldStr componentsSeparatedByString:@"("]; 
    NSString*str2=[strArray1 objectAtIndex:1]; 
    NSArray*strArray2 =[str2 componentsSeparatedByString:@")"]; 
    NSString*strToReplace=[strArray2 objectAtIndex:0]; 

    return [oldStr stringByReplacingOccurrencesOfString:strToReplace withString:@""]; 
} 

Эта функция действительна для строки, которая содержит одну пару скобок **() **

Вы можете изменить это согласно вашему требованию. Надеюсь, это поможет!

+0

Он работает на вас? –

Смежные вопросы