首页 > 解决方案 > 创建一个带有换行符的 NSPredicate 作为字符串的一部分

问题描述

我需要创建一个谓词来查找以下字符串:

"fred\n5" 其中 \n 是换行符。

至少,这是在读取元数据时返回的字符串

标签: swiftnewlinenspredicate

解决方案


你可以用正则表达式来做到这一点

let string = """
    fred
    5
    """

let predicate = NSPredicate(format: "self MATCHES %@", "fred\\n5")
predicate.evaluate(with: string) // true

也可以使用 pattern fred(\\n|\\r)5,它同时考虑换行返回。


或者删除换行符(实际上是任何空格和换行符)

let trimmedString = string.replacingOccurrences(of: "\\s", with: "", options: .regularExpression)

推荐阅读