swift 截取字符串

swift3.0 使用String.Index来做位置索引,要想实现截取功能首先得获取到String.Index;

获取中间部分参数用Range<Index>即可;

let str:String = btn.currentTitle ?? ""

         let indes = str.index(str.startIndex, offsetBy: str.length - 1)

         let prefix = str.substring(to: indes)

         btn.setTitle(prefix + "▾", for: .normal)

举例从开始截取到倒数第二位。

let index = str.index(str.endIndex, offsetBy: -5)
        
    let suffix = str.substring(from: index)

截取倒数五位

2.富文本设置 (空格也会占位)

      guard let mingzi = model.name,let jieshao = model.bio else {

         return

      }

      let amountString = NSMutableAttributedString(string:"\(mingzi)/\(jieshao)")

      //设置字体颜色

      amountString.addAttribute(NSForegroundColorAttributeName, value: UIColor.black,range: NSMakeRange(0, "\(mingzi)".length + 1))

      amountString.addAttribute(NSFontAttributeName, value: UIFont.systemFont(ofSize: 13),range: NSMakeRange(0, "\(mingzi)".length + 1))

      

      amountString.addAttribute(NSForegroundColorAttributeName, value: UIColor.gray,range: NSMakeRange(1 + "\(mingzi)".length, "\(jieshao)".length))

      amountString.addAttribute(NSFontAttributeName, value: UIFont.systemFont(ofSize: 13),range: NSMakeRange(1 + "\(mingzi)".length, "\(jieshao)".length))

      self.bio.attributedText = amountString

posted @ 2017-04-12 16:18  尸者禾火雨相  阅读(1811)  评论(0)    收藏  举报