난 iOS개발자/iOS

String Extension

김듀니 2021. 7. 27. 13:58
728x90

문자열 자르기1

extension String {
    func substring(from: Int, to: Int) -> String {
        guard count > from, from >= 0, to >= from else {
            return ""
        }
                
        let startIndex = index(self.startIndex, offsetBy: from)
        let endIndex = index(self.startIndex, offsetBy: to + 1)
        
        return String(self[startIndex..<endIndex])
    }
}

var someString = "0123456"
print(someString.substring(from: 2, to: 5)) //2345

 

 

 

문자열 자르기2

extension String {

    subscript(_ index: Int) -> Character {
        return self[self.index(self.startIndex, offsetBy: index)]
    }
    
    subscript(_ range: Range<Int>) -> String {
        let fromIndex = self.index(self.startIndex, offsetBy: range.startIndex)
        let toIndex = self.index(self.startIndex,offsetBy: range.endIndex)
        return String(self[fromIndex..<toIndex])
    }
}

let greeting = "hello"
greeting[0] //h
greeting[2] //l

greeting[0..<2]//he
728x90