美文网首页
iOS过滤Html标签[包含换行空格等特殊符号]

iOS过滤Html标签[包含换行空格等特殊符号]

作者: degulade | 来源:发表于2017-04-28 14:22 被阅读1561次

    在今天在数据处理的时候,后台返回的json中有个字段是html内容,但是我这边只需要里面的文字部分,就写了如下这个方法:

    - (NSString *)flattenHTML:(NSString *)html {
        
        //  过滤html标签
        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;
    }
    

    相关文章

      网友评论

          本文标题:iOS过滤Html标签[包含换行空格等特殊符号]

          本文链接:https://www.haomeiwen.com/subject/ynoozttx.html