其實很喜歡學習到新東西時候的那種滿足感,雖然是如此的初級,就像之前學習html的時候一樣,真好把字串
var str = "twigs x3, rocks x3, rope x2"
轉化成
[
(name: "twigs", count: "3"),
(name: "rocks", count: "3"),
(name: "rope", count: "2"),
]
這個樣子的
這個字串是以,
為間隔的,所以我們就以它為分割
//最近發現乙個正規的新方法,這下面是以前初學swift的時候用的
var strarr = str.components(separatedby: "_")
// 有兩種方法 .components(separatedby: string) .components(separatedby: charactersets)
// old one
var strarr = str.characters.split(separator: ",").map( )
// 前面不需要多說 characters.split(separator: ",") 就是以 `,` 進行分割,返回陣列,此時返回的並不是string
// 後面的 map({}) 是`陣列`的乙個轉化函式,接收函式作為引數, $0 表示 函式的第乙個引數。
此時的strarr
是這樣的,後兩個前面都有空格
twigs x3
rocks x3
rope x2
所以
去空格用到乙個string
的trimmingcharacters(in: characterset)
方法,接收乙個字元集合,這裡我們需要含有空格的string.whitespaces
set
for tempstr in strarr)
// 我就不再冗述了,上面就是獲取去掉空格的字串之後又分割一遍
// 此時還在迴圈內,temparr 裡面是這樣的 ["twigs","x3"]
// 此時,需要把第二個的 `x` 給去掉
}
這個,我還是在下面說吧,.remove 接收字元index 然後去掉 這個位置的字元,返回的是去掉這個字元後的字串
所以,接著上面的我們先等到x
的位置
let index = temparr[1].characters.indexof("x")// 然後去掉這個位置的 字元
temparr[1].remove(at: index)
let cc = crafting.characters.split(separator: ",").map()
var arr:[(name: string, count: string)] =
for tempstr in cc)
var count = temparr[1]
if let xposition = count.characters.index(of: "x")
}return arr
}
Swift3 0 字串常用整理
swift3.0 字串常用整理 1 判斷前字尾,hasperfix,hassuffix 返回的是bool值 str.hasprefix www.字首 str.hassuffix com 字尾 2 判斷兩個字串是否相等,返回的是bool值 let str1 www let str2 com if st...
swift3 0字串擷取,字串處理
1.擷取前面三個字串,要求輸出結果為abc let str abcdefghi let index str.index str.startindex,offsetby 3 獲取字元d的索引 let result str.substring to index 從起始擷取到索引的所有字串,即abc,注意...
swift3 0 關於字串
playground noun a place where people can play import uikit 字串字面量 func zfczml unicode 標量 u 0024 u unicode 標量 u 2665 u unicode 標量 u 1f496 初始化空字串 func cs...