做开发有的时候会遇到服务器返回的数据是html的,我们可以选择直接用webview来加载的方式去处理,当然这个方法不适用所有场景,通常我们会选择把没有必要的html标签去掉留下需要的文字信息,现在一起来看看吧。
首先提供一个html标签的字符串
NSString *html = @"<p><span style=\"font-family:宋体\">劳动是人类创造物质或精神财富的活动,有体力的,也有脑力的。我们自己是劳动者,也是别人劳动的见证者。劳动存在于现在,也存在于过去和未来。劳动的人有不同,劳动的对象有不同,劳动的方式有不同,劳动的环境有不同</span>……<span style=\"font-family:宋体\">于是,劳动的滋味也有不同。劳动很重要,品味劳动的滋味也很重要。你对劳动有怎样的体验或感悟?请以</span>“<span style=\"font-family:宋体\">品味劳动</span>”<span style=\"font-family:宋体\">为题写一篇不少于</span>800<span style=\"font-family:宋体\">字的作文,除诗歌外文体不限。</span></p><p><br/></p>";
NSString * bookDetailStr = [self filterHTML:_bookDetail];
-(NSString *)filterHTML:(NSString *)html
{
NSScanner * scanner = [NSScanner scannerWithString:html];
NSString * text = nil;
while([scanner isAtEnd]==NO)
{
//找到标签的起始位置
[scanner scanUpToString:@"<" intoString:nil];
//找到标签的结束位置
[scanner scanUpToString:@">" intoString:&text];
//替换字符
html = [html stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@>",text] withString:@""];
}
return html;
}
字符串替换
NSString * string=@"2017-08-08";
string=[string stringByReplacingOccurrencesOfString:@"-"withString:@"/"];
NSLog(@"replaceStr=%@",string);
输入结果如下
replaceStr=2017/08/08