iOS 刪除字串中html標籤
阿新 • • 發佈:2019-01-10
做開發有的時候會遇到伺服器返回的資料是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