我需要检查字符串的开头和结尾是否包含任何逗号(,)并删除该逗号(或)用空字符串替换那些逗号。

例如,

NSString *str1 = @",a,b,c,d,"; or

NSString *str1 = @",a,b,c,d"; or

NSString *str1 = @"a,b,c,d,";

输出:
NSString *str1 = @"a,b,c,d";

我试过了
NSRange lastComma = [str1 rangeOfString:@"," options:NSBackwardsSearch];

        if(lastComma.location != NSNotFound) {
            str1 = [str1 stringByReplacingCharactersInRange:lastComma
                                                     withString: @""];
        }

并删除最后一个逗号,但是如何删除第一个逗号?

有什么办法可以做到的, helper 会很感激。

最佳答案

您可以使用[NSString componentsSeparatedByString:],然后拒绝任何空字符串。这也将删除列表中的空元素:

NSArray *elements = [inputString componentsSeparatedByString:@","];
NSMutableArray *outputElements = [[NSMutableArray alloc] init];
for (NSString *element in elements)
    if ([element length] > 0)
        [outputElements addObject:element];

然后重新格式化字符串:
NSString *outputString = [outputElements componentsJoinedByString:@","]

关于ios - 在iOS中以逗号开头和结尾的字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22477537/

10-15 12:16