将空白区域的序列折叠为单个字符和修剪字符串 [英] Collapse sequences of white space into a single character and trim string

查看:137
本文介绍了将空白区域的序列折叠为单个字符和修剪字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

考虑以下示例:

"    Hello      this  is a   long       string!   "

我想将其转换为:

"Hello this is a long string!"


推荐答案

OS X 10.7+和iOS 3.2 +



使用hfossli提供的原生 regexp解决方案

使用您喜欢的regexp库或使用以下Cocoa原生解决方案:

Either use your favorite regexp library or use the following Cocoa-native solution:

NSString *theString = @"    Hello      this  is a   long       string!   ";

NSCharacterSet *whitespaces = [NSCharacterSet whitespaceCharacterSet];
NSPredicate *noEmptyStrings = [NSPredicate predicateWithFormat:@"SELF != ''"];

NSArray *parts = [theString componentsSeparatedByCharactersInSet:whitespaces];
NSArray *filteredArray = [parts filteredArrayUsingPredicate:noEmptyStrings];
theString = [filteredArray componentsJoinedByString:@" "];

这篇关于将空白区域的序列折叠为单个字符和修剪字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆