Swfit3.0关于String串操作

Swfit3.0关于String串操作最搞是的坐标索引变了,不能用原来的int直接定位

看一下,前后变化,以一个截取rgb字符串代码为例:

swift2.3的写法:

----------------------------------------------

letredStr = (StrasNSString).substringToIndex(2)

letgreenStr = ((StrasNSString).substringFromIndex(2)asNSString).substringToIndex(2)

letblueStr = ((StrasNSString).substringFromIndex(4)asNSString).substringToIndex(2)

而swift 3.0的写法:

---------------------------------------------------

letredStr =

Str[Str.startIndex...Str.index(Str.startIndex,offsetBy:1)]

letgreenStr =

Str[Str.index(Str.startIndex, offsetBy:2)...Str.index(Str.startIndex, offsetBy:3)]

letblueStr =

Str[Str.index(Str.startIndex, offsetBy:4)...Str.index(Str.startIndex, offsetBy:5)]

-----------------------------------------------------

索引全部要用

串名.index(串名.startindex,offsetBy:偏离数)

串名.index(串名.endindex,offsetBy:偏离数)

如果比较长可以先用let fromindex:String.index=Str.index(Str.startIndex, offsetBy:3) 的试再解析出索引值 ,再放到截取方法中 ,这样可读性更强

你可能感兴趣的:(Swfit3.0关于String串操作)