Câu trả lời:
Bạn đã có thể sử dụng:
NSString *stringWithoutSpaces = [myString
stringByReplacingOccurrencesOfString:@" " withString:@""];
Nếu bạn muốn hỗ trợ nhiều khoảng trắng cùng một lúc hoặc hỗ trợ bất kỳ khoảng trắng nào, bạn có thể làm như sau:
NSString* noSpaces =
[[myString componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]
componentsJoinedByString:@""];
A B C D E F
.
Lấy từ NSString
stringByReplacingOccurrencesOfString:withString:
Trả về một chuỗi mới trong đó tất cả các lần xuất hiện của một chuỗi đích trong bộ thu được thay thế bằng một chuỗi đã cho khác.
- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement
Thông số
Mục tiêu
The string to replace.
thay thế
The string with which to replace target.
Giá trị trả lại
Một chuỗi mới trong đó tất cả các lần xuất hiện của mục tiêu trong máy thu được thay thế bằng thay thế.
Tất cả ở trên sẽ hoạt động tốt. Nhưng phương pháp đúng là:
yourString = [yourString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
Nó sẽ hoạt động giống như một phương pháp TRIM. Nó sẽ loại bỏ tất cả các khoảng trống phía trước và sau.
Cảm ơn
[NSCharacterSet whitespaceCharacterSet]
và [NSCharacterSet whitespaceAndNewlineCharacterSet]
.
nếu chuỗi có thể thay đổi , thì bạn có thể biến đổi nó tại chỗ bằng cách sử dụng biểu mẫu này:
[string replaceOccurrencesOfString:@" "
withString:@""
options:0
range:NSMakeRange(0, string.length)];
điều này cũng hữu ích nếu bạn muốn kết quả là một phiên bản có thể thay đổi của một chuỗi đầu vào:
NSMutableString * string = [concreteString mutableCopy];
[string replaceOccurrencesOfString:@" "
withString:@""
options:0
range:NSMakeRange(0, string.length)];
Bạn có thể thử cái này
- (NSString *)stripRemoveSpaceFrom:(NSString *)str {
while ([str rangeOfString:@" "].location != NSNotFound) {
str = [str stringByReplacingOccurrencesOfString:@" " withString:@""];
}
return str;
}
Hy vọng rằng cái này sẽ giúp đc bạn.