gpt4 book ai didi

objective-c - 从 NSString 中删除所有空格

转载 作者:IT老高 更新时间:2023-10-28 12:19:04 29 4
gpt4 key购买 nike

我一直在尝试去除 NSString 中的空格,但我尝试过的方法都没有奏效。

我有 "this is a test" 我想获得 "thisisatest"

我使用了 whitespaceCharacterSet,它应该可以消除空格。

NSString *search = [searchbar.text stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceCharacterSet]];

但我一直得到带有空格的相同字符串。有什么想法吗?

最佳答案

stringByTrimmingCharactersInSet 只删除字符串开头和结尾的字符,而不是中间的字符。

1) 如果您只需要从字符串中删除给定字符(比如空格字符),请使用:

[yourString stringByReplacingOccurrencesOfString:@" " withString:@""]

2) 如果您确实需要删除一组字符(即不仅是空格字符,还包括任何空白字符,如空格、制表符、牢不可破的空格等),您可以拆分字符串使用 whitespaceCharacterSet 然后在一个字符串中再次加入单词:

NSArray* words = [yourString componentsSeparatedByCharactersInSet :[NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSString* nospacestring = [words componentsJoinedByString:@""];

请注意,最后一种解决方案的优点是可以处理每个空白字符,而不仅仅是空格,但比 stringByReplacingOccurrencesOfString:withString: 的效率要低一些。因此,如果您真的只需要删除空格字符并且确定除了纯空格字符之外不会有任何其他空白字符,请使用第一种方法。

关于objective-c - 从 NSString 中删除所有空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7628470/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com