Удалить символы из NSString?

NSString *myString = @"A B C D E F G";

Я хочу удалить пробелы, поэтому новая строка будет "ABCDEFG".

Ответ 1

Вы можете использовать:

NSString *stringWithoutSpaces = [myString 
   stringByReplacingOccurrencesOfString:@" " withString:@""];

Ответ 2

Если вы хотите поддерживать более одного места за раз или поддерживать любые пробелы, вы можете сделать это:

NSString* noSpaces =
    [[myString componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]
                           componentsJoinedByString:@""];

Ответ 3

Взято из NSString

stringByReplacingOccurrencesOfString:withString:

Возвращает новую строку, в которой все вхождения целевой строки в приемнике заменяются другой заданной строкой.

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement

Параметры

цели

The string to replace.

замена

The string with which to replace target.

Возвращаемое значение

Новая строка, в которой все вхождения цели в приемнике заменены заменой.

Ответ 4

Все выше будет хорошо работать. Но правильный метод таков:

yourString = [yourString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

Он будет работать как метод TRIM. Он удалит все передние и задние пространства.

Спасибо

Ответ 5

если строка изменена, тогда вы можете преобразовать ее на месте с помощью этой формы:

[string replaceOccurrencesOfString:@" "
                        withString:@""
                           options:0
                             range:NSMakeRange(0, string.length)];

это также полезно, если вы хотите, чтобы результат был изменчивым экземпляром входной строки:

NSMutableString * string = [concreteString mutableCopy];
[string replaceOccurrencesOfString:@" "
                        withString:@""
                           options:0
                             range:NSMakeRange(0, string.length)];

Ответ 6

Вы можете попробовать это

- (NSString *)stripRemoveSpaceFrom:(NSString *)str {
    while ([str rangeOfString:@"  "].location != NSNotFound) {
        str = [str stringByReplacingOccurrencesOfString:@" " withString:@""];
    }
    return str;
}

Надеюсь, это поможет вам.