NSCharacterSet

string = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

是個你需要牢牢記住的方法。它經(jīng)常會傳入 [NSCharacterSet whitespaceCharacterSet] 或 [NSCharacterSet whitespaceAndNewlineCharacterSet] 來刪除輸入字符串的頭尾的空白符號。

需要重點(diǎn)注意的是,這個方法僅僅去除了開頭和結(jié)尾的指定字符集中連續(xù)字符。這就是說,如果你想去除單詞之間的額外空格,請看下一步。

假設(shè)你去掉字符串兩端的多余空格之后,還想去除單詞之間的多余空格,這里有個非常簡便的方法:

NSString *string = @"Lorem? ? ipsum dolar?? sit? amet.";

string = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

NSArray *components = [string componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

components = [components filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self <> ''"]];

string = [components componentsJoinedByString:@" "];

首先,刪除字符串首尾的空格;然后用

NSString -componentsSeparatedByCharactersInSet: 在空格處將字符串分割成一個

NSArray;再用一個 NSPredicate去除空串;最后,用 NSArray -componentsJoinedByString:

用單個空格符將數(shù)組重新拼成字符串。注意:這種方法僅適用于英語這種用空格分割的語言。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容