Відповіді:
Ви можете використовувати:
NSString *stringWithoutSpaces = [myString
stringByReplacingOccurrencesOfString:@" " withString:@""];
Якщо ви хочете підтримувати більше одного пробілу одночасно або підтримувати будь-який пробіл, ви можете зробити це:
NSString* noSpaces =
[[myString componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]
componentsJoinedByString:@""];
A B C D E F
.
Взято з NSString
stringByReplacingOccurrencesOfString:withString:
Повертає новий рядок, у якому всі випадки цільового рядка в приймачі замінюються іншим заданим рядком.
- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement
Параметри
цільовий
The string to replace.
заміна
The string with which to replace target.
Повернене значення
Новий рядок, у якому всі входження цілі в приймач замінюються заміною.
Все вищезазначене працює нормально. Але правильний метод такий:
yourString = [yourString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
Це буде працювати як метод TRIM. Це видалить всі передні та задні проміжки.
Дякую
[NSCharacterSet whitespaceCharacterSet]
і [NSCharacterSet whitespaceAndNewlineCharacterSet]
.
якщо рядок є змінним , ви можете перетворити його на місці, використовуючи цю форму:
[string replaceOccurrencesOfString:@" "
withString:@""
options:0
range:NSMakeRange(0, string.length)];
це також корисно, якщо ви хочете, щоб результат був змінним екземпляром вхідного рядка:
NSMutableString * string = [concreteString mutableCopy];
[string replaceOccurrencesOfString:@" "
withString:@""
options:0
range:NSMakeRange(0, string.length)];