swift - 将子字符串与 Swift 中的另一个子字符串匹配

标签 swift logic string-matching

我正在研究 Swift 4。

需求:我有一个字符串:

var inputString = "Today is very bright day"

我有一个包含字符串键值对的文件。

{
    "Birthday": ["brand day", "burn day", "bright day", "brick daya"],
    "Temporary": ["tempora", "temporar", "tempura"]
}

所需的数学运算:在应用程序中,如果 inputString 是 "Today is very bright day",我需要检查此字符串是否包含键值对文件中的任何值,并且用键替换出现的地方。

例如:在上面的例子中:inputString = "Today is very bright day" 将其与文件匹配。 将 bight day 替换为 birthday 以便 inout 字符串变为 inputString = "今天是生日".

有什么办法吗?键值文件可能很大。

最佳答案

您可以使用暴力解决方案,它将是 2 个 for 循环,我正在努力增强它

  var inputString = "Today is very bright day"

        let file  = ["Birthday":["brand day", "burn day", "bright day", "brick daya"],"Temporary": ["tempora", "temporar", "tempura"]]

        file.forEach { (key,value) in
            value.forEach({ (item) in
               inputString =  inputString.replacingOccurrences(of: item, with: key)
            })
        }

        print(inputString)

关于swift - 将子字符串与 Swift 中的另一个子字符串匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50879281/

相关文章:

javascript - 无法理解 javascript String.match(regexp) 方法的行为

R模糊字符串匹配根据匹配的字符串返回特定列

ios - 将目标添加到 Collection View Nib 内的按钮操作

ios - fileManager.createFileAtPath 总是失败

swift - RTF 文件到属性字符串

python - 仅当值更改时触发线程(python)

vba - 编写转换表算法最有效的方法是什么

java - 为通用队列类创建 toString() 方法时出现逻辑错误

arrays - 条码的Code如何与数组码匹配?

ios - 尝试通过构造函数创建对象时,在展开 Optional 值时意外发现 nil