在 Swift 中分隔一个字符串



如何获取冒号后的值?

示例字符串:"aaa:test , bbb:test , ccc:test">

我必须识别aaa:bbb:,ccc:才能获得冒号后面的值。

还有一个特殊情况:">aaa:aaa: , bbb:bbb, , ccc:test">

该值可能与变量具有完全相同的单词,也可能不完全相同。此外,该值可能包含逗号。

使用 String 的 componenetSepardBy 方法。我假设所有键值都将用" , ">

let wordsArr = "aaa:test: , bbb:test,a , ccc:test".components(separatedBy: " , ") as [String]

这将给你一个带有单词 {[aaa:test:] , [ bbb:test,a] , [ccc:test]} 的数组

var aaa, bbb, ccc : String?

for (_,keyValueWords) in wordsArr.enumerated()  {
var strKeyValuePair = keyValueWords
if strKeyValuePair.hasPrefix("aaa:") {
aaa = String(strKeyValuePair.characters.dropFirst(4))
}
else if strKeyValuePair.hasPrefix("bbb:"){
bbb = String(strKeyValuePair.characters.dropFirst(4))
}else  if strKeyValuePair.hasPrefix("ccc:"){
ccc = String(strKeyValuePair.characters.dropFirst(4))
}
}
print("aaa=(aaa!) , bbb=(bbb!) , ccc=(ccc!)")

相关内容

最新更新