创建一个带有换行符的 NSPredicate 作为字符串的一部分
Posted
技术标签:
【中文标题】创建一个带有换行符的 NSPredicate 作为字符串的一部分【英文标题】:Create an NSPredicate with a line break as part of a string 【发布时间】:2021-08-03 16:50:24 【问题描述】:我需要创建一个谓词来查找以下字符串:
"fred\n5" 其中 \n 是换行符。
至少,这是读取元数据时返回的字符串
【问题讨论】:
【参考方案1】:你可以用正则表达式来做到这一点
let string = """
fred
5
"""
let predicate = NSPredicate(format: "self MATCHES %@", "fred\\n5")
predicate.evaluate(with: string) // true
也可以使用fred(\\n|\\r)5
模式,它同时考虑换行和返回。
或者删除换行符(实际上是任何空白和换行符)
let trimmedString = string.replacingOccurrences(of: "\\s", with: "", options: .regularExpression)
【讨论】:
谢谢。这印证了我的想法。我能问你是否可以给我更多关于如何解开这个问题的指示:NSPredicate(format: "%K MATCHES %@", NSMetadataItemFinderTagsKey, "\\w+\\\n\\d")。我想要的是所有包含最后一个数字字符的 URL 任何带有尾随数字字符的都是.+\\d$
以上是关于创建一个带有换行符的 NSPredicate 作为字符串的一部分的主要内容,如果未能解决你的问题,请参考以下文章
带有 NSNumber 的 NSArray 的 NSPredicate(核心数据)
带有搜索栏的 cell.accessoryType 不影响 NSPredicate
带有正则表达式捕获的 NSPredicate 总是得到 0 个结果