簡體   English   中英

從NSString刪除損壞的HTML標簽

[英]Remove broken HTML tags from NSString

我的網絡服務正在向我返回HTML內容,有時HTML字符串可能包含不完整的HTML標簽

e.g: "This is some broken html tag <b"

或模擬者

現在,我將其轉換為NSAttributedString,這是因為不完整的標簽引起了問題,如果我可以從NSString中刪除這些不完整的HTML標簽,就可以解決,有什么建議可以做嗎?

嘗試以下操作:保存從Web服務獲得的字符串,並使用以下命令對其進行更新:

NSString *str=@"This is some broken html tag <b";
[str stringByReplacingOccurrencesOfString:@"<b," withString:@""];

這將刪除所有出現的@“

試試這個代碼

- (NSString *)removeIncompleteHTMLTagInString:(NSString *)HTMLString {
    NSArray *subStringByOpenTabs = [HTMLString componentsSeparatedByString:@"<"];
    NSArray *subStringByCloseTabs = [HTMLString componentsSeparatedByString:@">"];
    if (subStringByOpenTabs.count > subStringByCloseTabs.count) {
        return [HTMLString substringToIndex:(HTMLString.length - ((NSString *)[subStringByOpenTabs lastObject]).length) -1];
    }
    else {
        return HTMLString;
    }
}

測試:

NSLog(@"%@",[self removeIncompleteHTMLTagInString:@"This is some <xx> broken html tag<b"]);

輸出為: "This is some <xx> broken html tag"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM