swift 字符串自定义下标截取和赋值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift 字符串自定义下标截取和赋值相关的知识,希望对你有一定的参考价值。

参考技术A extension String//字符串截取

    ///读取某个下标字符

    subscript(index:Int)->String

        get//读取

            let idx =self.index(self.startIndex, offsetBy: index)

            return String(self[idx])

       

        set//修改

            self.remove(at:self.index(self.startIndex, offsetBy: index))

            let new = newValue

            for i in 0..<new.count

                let character =Character(new[i])

                let idx =self.index(self.startIndex, offsetBy: index+i)

                self.insert(character, at: idx)

           

       

   

    ///读取闭区间字符串

    subscript(rang: ClosedRange<Int>) ->String

        let range =self.index(startIndex, offsetBy: rang.lowerBound)...self.index(startIndex, offsetBy: rang.upperBound)

        return String(self[range])

   

    ///读取开区间字符串

    subscript(rang:Range) ->String

        let range =self.index(startIndex, offsetBy: rang.lowerBound)..<self.index(startIndex, offsetBy: rang.upperBound)

        return String(self[range])

   

Swift 自定义Subscript

Swift可以方便给自定义类加下标,其中参数和返回值可以在类里定义为任意类型:

subscript(parameters) -> ReturnType {
    get {
        //return someValue
    }
    set (newValue) {
        //setSomeValue()
    }
}/* 何问起 hovertree.com */

下标通常是访问某些方法的快捷方式,就算对NSArray操作的时候一样。

和计算属性一样,下标也能以只读或只写的方式出现,如只读下标:

subscript(parameters) -> ReturnType {
    return someValue
}/* 何问起 hovertree.com */

如果一个类中支持多种下标,而且参数类型也是一样的,可以在访问该下标的时候显式地申明类型:

let player: Type = Class[(3,4)]
/* 何问起 hovertree.com */

 

http://www.cnblogs.com/roucheng/p/swiftmianshiti.html

以上是关于swift 字符串自定义下标截取和赋值的主要内容,如果未能解决你的问题,请参考以下文章

自定义截取数,截取字符串,返回字符串数组。

自定义一个函数截取中文字符串

swift 自定义view VFL 设置约束冲突

swift中自定义的结构体怎么转成data

用于字符串资源格式的自定义 Swift 编码器/解码器

C语言 通过自定义函数 寻找并返回数组最大值的位置下标 最大值有多个时 输出第一个最大值的下标