欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS實(shí)現(xiàn)去除html標(biāo)簽的方法匯總

 更新時(shí)間:2017年10月20日 11:27:53   作者:隨風(fēng)  
相信大家在做網(wǎng)站的時(shí)候,經(jīng)常會(huì)遇到去除html標(biāo)簽的問題,下面這篇文章主要給大家總結(jié)介紹了關(guān)于iOS如何實(shí)現(xiàn)去除html標(biāo)簽的一些方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。

前言

我們?cè)谝恍╅_發(fā)中,很有必要過濾掉用戶輸入的文本中的HTML標(biāo)簽以防范XSS攻擊,本文將詳細(xì)介紹關(guān)于iOS去除html標(biāo)簽的相關(guān)內(nèi)容,分享出來(lái)供大家參考學(xué)習(xí),下面話不多說了,來(lái)一起看看詳細(xì)的介紹吧。

請(qǐng)求接口返回的數(shù)據(jù)里包含html標(biāo)簽,OC中去掉的方法之前做過,代碼如下

-(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 *)getZZwithString:(NSString *)string{
 NSRegularExpression *regularExpretion=[NSRegularExpression regularExpressionWithPattern:@"<[^>]*>|\n"
                                         options:0
                                          error:nil];
 string=[regularExpretion stringByReplacingMatchesInString:string options:NSMatchingReportProgress range:NSMakeRange(0, string.length) withTemplate:@""];
 return string;
}

還可以轉(zhuǎn)換為富文本

+ (NSMutableAttributedString *)praseHtmlStr:(NSString *)htmlStr {
  NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithData:[htmlStr dataUsingEncoding:NSUnicodeStringEncoding] options:@{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,NSCharacterEncodingDocumentAttribute :@(NSUTF8StringEncoding)} documentAttributes:nil error:nil];
  [attributedString addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:13] range:NSMakeRange(0, attributedString.length)];
  [attributedString addAttribute:NSForegroundColorAttributeName value:CommonColor(Color333333) range:NSMakeRange(0, attributedString.length)];
 
  return attributedString;
}

但是這次使用的是swift,來(lái)看我收集的幾種方法,其實(shí)都差不多

func removeHTML(htmlString : String)->String{
    return htmlString.replacingOccurrences(of: "<[^>]+>", with: "", options: .regularExpression, range: nil)
}
 
extension String {
  func deleteHTMLTag(tag:String) -> String {
    return self.replacingOccurrences(of: "(?i)</?\(tag)\\b[^<]*>", with: "", options: .regularExpression, range: nil)
  }
  
  func deleteHTMLTags(tags:[String]) -> String {
    var mutableString = self
    for tag in tags {
      mutableString = mutableString.deleteHTMLTag(tag: tag)
    }
    return mutableString
  }
  
  ///去掉字符串標(biāo)簽
  mutating func filterHTML() -> String?{
    let scanner = Scanner(string: self)
    var text: NSString?
    while !scanner.isAtEnd {
      scanner.scanUpTo("<", into: nil)
      scanner.scanUpTo(">", into: &text)
      self = self.replacingOccurrences(of: "\(text == nil ? "" : text!)>", with: "")
    }
    return self
  }
}

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,本文還有許多不足,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • 詳解iOS開發(fā)獲取當(dāng)前控制器的正取方式

    詳解iOS開發(fā)獲取當(dāng)前控制器的正取方式

    這篇文章主要介紹了iOS開發(fā)獲取當(dāng)前控制器的正取方式,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2018-09-09
  • iOS 9 更新之Safari廣告攔截器(Content Blocker)開發(fā)教程

    iOS 9 更新之Safari廣告攔截器(Content Blocker)開發(fā)教程

    這篇文章主要介紹了iOS 9 更新之Safari廣告攔截器(Content Blocker)開發(fā)教程的相關(guān)資料,需要的朋友可以參考下
    2015-08-08
  • iOS如何掃描HEIF格式的二維碼圖片

    iOS如何掃描HEIF格式的二維碼圖片

    這篇文章主要告訴大家iOS如何掃描HEIF格式的二維碼圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • iOS?button響應(yīng)流程圖文詳解

    iOS?button響應(yīng)流程圖文詳解

    這篇文章主要為大家介紹了iOS?button響應(yīng)流程圖文詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • IOS安裝包比Android容量大的原因

    IOS安裝包比Android容量大的原因

    這篇文章主要介紹了為什么IOS安裝包比Android容量大的原因,如果你是一個(gè)IOS或者安卓開發(fā)者,學(xué)習(xí)下相關(guān)知識(shí)吧。
    2018-02-02
  • IOS 指紋識(shí)別兩種方式詳解及實(shí)例

    IOS 指紋識(shí)別兩種方式詳解及實(shí)例

    這篇文章主要介紹了IOS 指紋識(shí)別兩種方式詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • ios版微信小程序跳一跳輔助

    ios版微信小程序跳一跳輔助

    這篇文章主要為大家詳細(xì)介紹了ios版微信小程序跳一跳輔助,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • iOS tableView右側(cè)索引視圖狀態(tài)獲取的方法實(shí)例

    iOS tableView右側(cè)索引視圖狀態(tài)獲取的方法實(shí)例

    tableView用于顯示一個(gè)垂直滾動(dòng)的單元格數(shù)(通常為可重復(fù)使用的單元格)組成的視圖,這篇文章主要給大家介紹了關(guān)于iOS tableView右側(cè)索引視圖狀態(tài)獲取的相關(guān)資料,需要的朋友可以參考下
    2021-07-07
  • 最新評(píng)論