NSCharacterSet去除字符串中的空格、删除指定\任意字符集
一.去除首尾的空格
/** 1.去除首尾的空格*/
NSString *strMsg=@" 简书作者:CoderZb ";
NSString *strResult = [strMsg stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
NSLog(@"去除空格前:%@",strMsg);
NSLog(@"去除空格后:%@",strResult);
二.去除连续的字符集
/** 2.去除指定的字符集*/
NSString *strMsg2=@"简书作者:CoderZb";
id cs= [NSCharacterSet characterSetWithCharactersInString:@"简书作者:"];
NSString *strResult2=[strMsg2 stringByTrimmingCharactersInSet:cs];
NSLog(@"去除之后的结果:%@",strResult2);
三.去除任意的字符集(连续、非连续都可)
/** 3.删除任意的字符集*/
NSString *strMsg=@"简书作者:CoderZb";
NSCharacterSet *cs= [NSCharacterSet characterSetWithCharactersInString:@"简者Cdb"];
NSMutableString *theString=[NSMutableString stringWithString:strMsg];// 将strMsg变为可变字符串
NSString *strResult= [self clearnIllegitCharacters:theString andCharacterSet:cs];
NSLog(@"删除任意的字符集的结果:%@",strResult);
// 清除敏感词语
- (NSString *)clearnIllegitCharacters:(NSMutableString *)originString andCharacterSet:(NSCharacterSet *)cs{
NSString *strResult=nil;
NSRange range2;
do {
range2=[originString rangeOfCharacterFromSet:cs options:NSLiteralSearch];
if (range2.location!=NSNotFound) {// range2.location不为NSNotFound,就执行{}
// [originString deleteCharactersInRange:range2];// 删除range2代表的字符集
[originString replaceCharactersInRange:range2 withString:@"*"];// 用星号替换掉range2代表的字符集
}
} while (range2.location!=NSNotFound);// range2.location不为NSNotFound,就执行do{},直至等于NSNotFound,就不再执行do{}
// 可变字符串变为不可变
strResult=[[NSString alloc] initWithString:originString];
return strResult;
}
[originString replaceCharactersInRange:range2 withString:@"*"];// 用星号替换掉range2代表的字符集
[originString deleteCharactersInRange:range2];// 删除range2代表的字符集
四.字符串分割(常用)方式1:
#define kAlphaNum @"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
NSString *str = @"简书作者:Coder#Z@b";
NSCharacterSet *cs;
// invertedSet方法是取反字符。所以cs的值为:除了kAlphaNum里的字符,其余的任何字符都是cs
cs = [[NSCharacterSet characterSetWithCharactersInString:kAlphaNum] invertedSet];
// 将str按cs分割成数组(既然能分割,说明cs是str的子集,并且cs中的字符不会在str中出现,相当于str中删除了这些字符),最后将数组按照@""分割成字符串
NSString *filtered = [[str componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
NSLog(@"字符串->数组->字符串 %@", filtered);
四.字符串分割(常用)方式2:
NSString *str = @"简书作者:Coder#Z@b";
//按@"#简书@作者:"将str分离成数组,然后将数组按@"-"拼接成字符串
NSString *filtered = [[str componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"#简书@作者:"]] componentsJoinedByString:@"-"];
NSLog(@"%@", filtered);

NSCharacterSet去除字符串中的空格、删除指定\任意字符集的更多相关文章
- Linux shell去除字符串中所有空格
Linux shell去除字符串中所有空格 echo $VAR | sed 's/ //g'
- java 去html标签,去除字符串中的空格,回车,换行符,制表符
public static String getonerow(String allLine,String myfind) { Pattern ...
- Python编写“去除字符串中所有空格”
#利用迭代操作,实现一个trim()函数,去除字符串中所有空格 def trim(str): newstr = '' for ch in str: #遍历每一个字符串 if ch!=' ': news ...
- IOS NSCharacterSet 去除NSString中的空格
去除 username中的空格,table newline,nextline 代码如下: NSCharacterSet *whitespace = [NSCharacterSet whitespac ...
- NSCharacterSet 去除NSString中的空格
转自:http://blog.sina.com.cn/s/blog_5421851501014xif.html 去除 username中的空格,table newline,nextline 代码如下: ...
- javascript去除字符串中的空格
使用JavaScript去除字符串的空格,可以有两种方法,一种是使用replace()方法将空格(空白符)替换为空串,一种就是使用trim()方法去除字符串两端的空白字符. replace()方法 r ...
- JS 去除字符串中的空格
1. 去掉字符串前后所有空格: 代码如下: function Trim(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); } 说明: ...
- Java去除字符串中的空格
特别注意了 Strim或者Trip都是只能去除头部和尾部的空字符串.中间的部分是不能够去除的! 推荐使用ApacheCommonse的StringUtils.deleteWhitespace(&quo ...
- 换行符javajava去除字符串中的空格、回车、换行符、制表符
在改章节中,我们主要介绍换行符java的内容,自我感觉有个不错的建议和大家分享下 每日一道理 只有启程,才会到达理想和目的地,只有拼搏,才会获得辉煌的成功,只有播种,才会有收获.只有追求,才会 ...
随机推荐
- axios发送两次请求原因及解决方法
axios发送两次请求原因及解决方法 最近Vue项目中使用axios组件,在页面交互中发现axios会发送两次请求,一种请求方式为OPTIONS,另外一种为自己设置的. 如图: 什么是CORS通信? ...
- python 之 日志输出格式
# 定义日志文件的路径LOG_PATH=r'D:\code\SH_fullstack_s1\day15\ATM\log\access.log'BOSS_LOG_PATH=r'D:\code\SH_fu ...
- snipaste截图软件
- 架构sass文件
sass/ | |– base/ | |– _reset.scss # Reset/normalize | |– _typography.scss # Typography rules | ... # ...
- ]NET Core Lucene.net和PanGu分词实现全文检索
Lucene.net和PanGu分词实现全文检索 Lucene.net(4.8.0) 学习问题记录五: JIEba分词和Lucene的结合,以及对分词器的思考 前言:目前自己在做使用Lucene. ...
- Cache中间件和缓存降级
Cache中间件和缓存降级 1.前言 surging受到不少.net同学的青睐,也提了不少问题,提的最多的是什么时候集成API 网关,在这里回答大家最近已经开始着手研发,应该在1,2个月内会有个初版A ...
- 054 Spiral Matrix 旋转打印矩阵
给出一个 m x n 的矩阵(m 行, n 列),请按照顺时针螺旋顺序返回元素.例如,给出以下矩阵:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]应该返回 [1,2, ...
- 关于eclipse安装maven之后,maven找不到JDK问题
问题: 最近在Eclipse里面装了maven之后,启动或者在运行项目时存在如下的警告: Eclipse is rinning in a JRE,but a JDK is require, Some ...
- 微信支付(java版本)_统一下单
最近工作接触到微信支付,刚开始解决微信支付很神秘,接触之后发现并没有那么神秘,就是有很多坑,在开发的时候需要注意,整理出来: 1.准备工作 首先需要登录微信支付公众平台阅读接口文档,地址:https: ...
- NPOI读写Excel【转载】
参考示例:https://www.cnblogs.com/luxiaoxun/p/3374992.html 感谢! 1.整个Excel表格叫做工作表:WorkBook(工作薄),包含的叫页(工作表): ...