首页 > 代码精文 > iOS > Swift字符串截取、检索字符
2016
04-07

Swift字符串截取、检索字符

刚学OC的时候就觉得它太异于常用的开发言,如C/C++,JAVA,PHP...有人说它是火星语言,博主也是如此认为,语法太TMD另类了。不过还好人家高效,说实在的,本人对标准C++的语法甚是。而现在的Swift也是如此,感觉也有很多非人类的地方,哈哈……不过比OC又大大舒服多。 像拓展功能非常牛,不需要继承即可在原来的类基础上添加新的方法……

看下字符串的截取,C++,检测字符串位置rangeOfString.看代码:

        let classname:String = "abcd.efghi"
        let subRange = classname.rangeOfString(".")
        if subRange != nil {
            print(classname.substringFromIndex((subRange?.endIndex)!))
            print(classname.substringToIndex((subRange?.endIndex)!))
        }

运行结果:
efghi
abcd.

索引是struct类型,并不是Int类型,所以如果你要进行位置加减就更蛋疼,不太好理解,看代码

            let startIndex = subRange?.endIndex.advancedBy(3)
            print(classname.substringFromIndex((startIndex)!))
            print(classname.substringToIndex((startIndex)!))

这个是在上面的代码基础上面添加的,看看输出什么结果:
hi
abcd.efg
结论很明显了,是开始的位移增加了3个,所以efghi=>hi,abcd.=>abcd.efg,有没有感觉用起来有点绕绕的呢?可能主要返回的不是Int,我们人类还是主观上对数字要敏感一些,对结构体要稍微差些……

最后编辑:
作者:小企鹅
坚持+积累+学习
捐 赠如果您觉得这篇文章有用处,请支持作者!鼓励作者写出更好更多的文章!

留下一个回复