如何删除字符串中的空格?

Mag*_*aga 31 iphone objective-c

我有一个字符串说 "Allentown, pa"

如何删除其间的空白区域,pa使用目标c?

tas*_*oor 66

这将删除所有空间myString.

NSString *newString = [myString stringByReplacingOccurrencesOfString:@" " withString:@""];
Run Code Online (Sandbox Code Playgroud)

  • 我无法在iOS 9上使用它! (6认同)

Par*_*att 31

以下是从字符串中删除空格的正确记录方法.

whitespaceCharacterSet适用于iOS的Apple文档说:

Returns a character set containing only the in-line whitespace characters space (U+0020) and tab (U+0009).

+ (id)whitespaceCharacterSet
Return Value
A character set containing only the in-line whitespace characters space (U+0020) and tab (U+0009).

Discussion
This set doesn’t contain the newline or carriage return characters.

Availability
Available in iOS 2.0 and later.
Run Code Online (Sandbox Code Playgroud)

您可以使用以下记录的方式:

[yourString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
Run Code Online (Sandbox Code Playgroud)

希望这对你有所帮助.

如果您需要更多帮助,请告知我们.

  • 需要注意的是:这只会在字符串的开头和结尾处修剪空白,而不是在中间. (17认同)
  • 这将是最短的黑客攻击:`[[str componentsSeparatedByCharactersInSet:NSCharacterSet.whitespaceCharacterSet] componentsJoinedByString:@""]` (7认同)
  • 这没有回答这个问题 - 修剪字符以及开头和结尾可能是正确的,但是它没有做OP想要从字符串内部删除空格的内容. (4认同)

gw0*_*gw0 12

可能是将白色空间的折叠序列中的一个答案解决为单个字符和修剪字符串的解决方案:

NSString *whitespaceString = @" String with whitespaces ";

NSString *trimmedString = [whitespaceString stringByReplacingOccurrencesOfString:@" " withString:@""];
Run Code Online (Sandbox Code Playgroud)

  • 现在如果字符串连续包含多个空格怎么办? (2认同)

Jay*_*bey 8

如果你想要空格和换行符,那么使用" whitespaceAndNewlineCharacterSet "代替" whitespaceCharacterSet "

 NSCharacterSet *whitespace = [NSCharacterSet whitespaceCharacterSet];
 NSString *trimmedString = [temp.text stringByTrimmingCharactersInSet:whitespace];

 NSLog(@"Value of the text field is %@",trimmedString);   
Run Code Online (Sandbox Code Playgroud)