加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-14 02:07:11 所属栏目:百科 来源:网络整理
导读:碰到一个问题,要将一个字符串中的空格替换成“-”,一个以上的“-”要减少到一个,比如: 替换前: 你 好 - 吗? 替换后 你-好-吗? 这里需要两步,先将空格替换成“-”,再将多个“-”合并为一个。 第一步很好解决: NSString *str = @“你 好 - 吗?”;st

碰到一个问题,要将一个字符串中的空格替换成“-”,一个以上的“-”要减少到一个,比如:

替换前:

你 好 - 吗?

替换后

你-好-吗?

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


第一步很好解决:

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 ]];

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读