I'm new in Swift Programming. I have a question about Swift String
. I have a TableView
which show data from JSON. Below the snippet :
cell.labelFOStat.text = ("F/O Status : \(subString(string: featureStr!, startIndex: 0, endIndex: 11))")
cell.labelHKStat.text = ("H/K Status : \(subString(string: featureStr!, startIndex: 12, endIndex: 23))" )
cell.labelID.text = ("ID : \(subString(string: featureStr!, startIndex: 24, endIndex: 25))")
cell.labelTime.text = ("Time : \(subString(string: featureStr!, startIndex: 26, endIndex: 30))")
cell.labelExplanation.text = ("Explanation : \(subString(string: featureStr!, startIndex: 31, endIndex: 62))")
cell.labelFOAdult.text = ("F/O Adult : \(subString(string: featureStr!, startIndex: 63, endIndex: 64))")
cell.labelFOChild.text = ("F/O Child : \(subString(string: featureStr!, startIndex: 65, endIndex: 66))")
cell.labelHKAdult.text = ("H/K Adult : \(subString(string: featureStr!, startIndex: 67, endIndex: 68))")
cell.labelHKChild.text = ("H/K Child : \(subString(string: featureStr!, startIndex: 69, endIndex: (featureStr?.characters.count)! - 1))")
Where substring
is :
func subString(string:String, startIndex: Int, endIndex: Int) -> String {
let index = string.index((string.startIndex), offsetBy: startIndex)
let endIndex = string.index((string.startIndex), offsetBy: endIndex)
let t:String?
let str = string[index...endIndex]
return str
}
This is snippet of my JSON :
[{
"zinr": "1006",
"features": "Occupied Sleep Out 0115:15asd 0 0 0 0",
"etage": 10,
"bezeich": "Deluxe King",
"house-status": 1,
"zistatus": 4,
"userinit": "01",
"nr": 1
}, {
"zinr": "709",
"features": "Vacant Occupied 0112:46tes 0 0 0 0",
"etage": 7,
"bezeich": "Superior King",
"house-status": 1,
"zistatus": 0,
"userinit": "01",
"nr": 1
}]
A want to know, how to use the String range
to get key "features"
. Its possible to only make range
parameter without start or end index? . I've read this but its still make me little confuse. Thanks in Advance .