swift - 在 Swift 中分隔字符串

标签 swift string substring

如何获取冒号后的值?

示例字符串:“aaa:test, bbb:test, ccc:test”

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

还有一个特例: "aaa:aaa: , bbb:bbb, , ccc:test"

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

最佳答案

使用String的componenetSeparatedBy方法。我假设所有键值将由 ", "

   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!)")

关于swift - 在 Swift 中分隔字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45293022/

相关文章:

C++从char中删除子字符串

c# - 根据某些符号的子字符串

swift - UIImagePickerController - 让用户在相机和相册之间进行选择?

ios - 如何确定数组是否已包含一个值以及它是否跳到下一个值?

ios - 与推送交互后导航到特定 ViewController

ios - 如何将字符串值转换为枚举

c++ - 使用 C++ STL 库查找变量模式

Android Studio - 2个字符串数组到 ListView

ios - 如何从我的数组中删除 "..."?

javascript - 编码新手 - 如何在 Javascript 中保存子字符串