在今天在數(shù)據(jù)處理的時(shí)候,后臺返回的json中有個(gè)字段是html內(nèi)容厦凤,但是我這邊只需要里面的文字部分富蓄,就寫了如下這個(gè)方法:
- (NSString *)flattenHTML:(NSString *)html {
// 過濾html標(biāo)簽
NSScanner *theScanner;
NSString *text = nil;
theScanner = [NSScanner scannerWithString:html];
while ([theScanner isAtEnd] == NO) {
// find start of tag
[theScanner scanUpToString:@"<" intoString:NULL] ;
// find end of tag
[theScanner scanUpToString:@">" intoString:&text] ;
// replace the found tag with a space
//(you can filter multi-spaces out later if you wish)
html = [html stringByReplacingOccurrencesOfString:
[NSString stringWithFormat:@"%@>", text] withString:@""];
}
// 過濾html中的\n\r\t換行空格等特殊符號
NSMutableString *str1 = [NSMutableString stringWithString:html];
for (int i = 0; i < str1.length; i++) {
unichar c = [str1 characterAtIndex:i];
NSRange range = NSMakeRange(i, 1);
// 在這里添加要過濾的特殊符號
if ( c == '\r' || c == '\n' || c == '\t' ) {
[str1 deleteCharactersInRange:range];
--i;
}
}
html = [NSString stringWithString:str1];
return html;
}