2018-08-30 01:51:04 +00:00
|
|
|
//
|
|
|
|
// AttributedString+Trim.swift
|
|
|
|
// Tusker
|
|
|
|
//
|
|
|
|
// Created by Shadowfacts on 8/29/18.
|
|
|
|
// Copyright © 2018 Shadowfacts. All rights reserved.
|
|
|
|
//
|
|
|
|
|
|
|
|
import Foundation
|
|
|
|
|
|
|
|
extension NSMutableAttributedString {
|
|
|
|
|
2019-04-05 01:45:48 +00:00
|
|
|
var fullRange: NSRange {
|
|
|
|
return NSRange(location: 0, length: self.length)
|
|
|
|
}
|
|
|
|
|
|
|
|
func trimLeadingCharactersInSet(_ charSet: CharacterSet) {
|
2018-08-30 01:51:04 +00:00
|
|
|
var range = (string as NSString).rangeOfCharacter(from: charSet)
|
|
|
|
|
2019-04-05 01:45:48 +00:00
|
|
|
while range.length != 0 && range.location == 0 {
|
|
|
|
replaceCharacters(in: range, with: "")
|
|
|
|
range = (string as NSString).rangeOfCharacter(from: charSet)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func trimTrailingCharactersInSet(_ charSet: CharacterSet) {
|
|
|
|
var range = (string as NSString).rangeOfCharacter(from: charSet, options: .backwards)
|
2018-08-30 01:51:04 +00:00
|
|
|
|
|
|
|
while range.length != 0 && range.length + range.location == length {
|
|
|
|
replaceCharacters(in: range, with: "")
|
|
|
|
range = (string as NSString).rangeOfCharacter(from: charSet, options: .backwards)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|