删除字符串末尾的出现 - iOS

时间:2017-02-03 18:18:42

标签: ios objective-c

假设您有NSString *testString = @"Abcd!!!!";,请注意四个惊叹号,如何尽可能有效地删除所有感叹号?

感叹号可以是任意数量的金额,只有在连续的尾随顺序中才能删除。

一个例子可能是: NSString *testString = @"ABC!D!!!!!";

结果将是: NSString *result = @"ABC!D";

1 个答案:

答案 0 :(得分:2)

因为你不知道有多少人!你将从字符串中删除,你可以使用正则表达式。

NSString *string = @"ABC!D!!!!!";
NSError *error = nil;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"!+$" options:NSRegularExpressionCaseInsensitive error:&error];
NSString *modifiedString = [regex stringByReplacingMatchesInString:string options:0 range:NSMakeRange(0, [string length]) withTemplate:@""];
NSLog(@"%@", modifiedString);

正则表达式并不是解决这些问题的最有效方法,但在这种情况下,我不认为以另一种方式做出可测量的收益