2010-04-05 51 views
30

假設我有不留空格字符串如何在不插入空格的情況下替換NSString中的字符?

NSString* myString = @"Hello,"; 

如何刪除逗號?我曾嘗試:

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

NSString* newString = [myString stringByTrimmingCharactersInSet:[NSCharacterSet punctuationCharacterSet]]; 

但都留下空間。

+8

沒有他們不,別的事情正在發生。 – 2010-04-06 00:05:50

+2

你如何驗證是否有空間?你可以顯示該代碼嗎?我敢打賭問題在那裏。 – 2010-04-06 00:11:28

+0

我正在標記我的字符串。作爲兩個獨立的標記,我與你分開了。當從令牌中構建一個字符串時,Hello和之間有一個空格, – 2010-04-06 19:41:53

回答

101

我只是跑下面的測試

NSString * myString = @"Hello,"; 

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

NSLog(@"%@xx",newString); 

我也得到2010-04-05 18:51:18.885 TestString[6823:a0f] Helloxx作爲輸出。沒有剩餘空間。

0
NSString *newString = [myString substringToIndex:5]; 

這將確保只有5個字符串中的字符,但要注意,這也將拋出一個異常,如果有字符串中不至少 5個字符開始。你如何處理這個字符串?它是否顯示給用戶?它是否被寫入文件?您發佈的代碼不會重現錯誤,因此您應該發佈您遇到問題的代碼。

0

ü可以通過stringByReplacingCharactersInRange使用..其它方式

token = [token stringByReplacingCharactersInRange:NSMakeRange(i, 1) withString:@"*"]; 

「令牌」是你想要替換的NSString和「i」是你想改變的NSString「*」

相關問題