您的位置:首页 > 移动开发 > IOS开发

【iOS开发】---- 正则表达式替换一个或一个以上空格

2013-09-27 16:26 471 查看
碰到一个问题,要将一个字符串中的空格替换成“-”,一个以上的“-”要减少到一个,比如:

替换前:

你 好 - 吗?

替换后

你-好-吗?

这里需要两步,先将空格替换成“-”,再将多个“-”合并为一个。

第一步很好解决:

NSString *str = @“你 好 - 吗?”;
str = [str stringByReplacingOccurrencesOfString:@" " withString:@"-"];


替换后str=@“你-好---吗?”。
然后就是合并多个“-”,这里有个简单的方法:
在iOS中是支持正则表达式的,利用正则表达式能够方便快速的达到目的;

NSRegularExpression *regular;

regular = [[NSRegularExpression alloc] initWithPattern:@"-{1,}"
options:NSRegularExpressionCaseInsensitive
error:nil];
str = [regular stringByReplacingMatchesInString:str options:NSRegularExpressionCaseInsensitive  range:NSMakeRange(0, [str length]) withTemplate:@"-"];


去除字符串中所有得空格及控制字符:
str = [str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet ]];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: