Swift 字符串处理与 Codable 解码全解析
1. 字符串处理
在处理字符串时,我们常常会遇到一些棘手的问题。比如下面这个例子:
let originalString = "H̾e͜ l͘l͘ò W͛òr̠l͘d͐!"
originalString.contains("Hello") // false
可以看到, originalString 包含了组合字符,这使得搜索单词变得非常困难。不过,Swift 中的 String 提供了折叠机制,让我们可以指定要消除的字符差异:
let foldedString = originalString.folding(
options: [.caseInsensitive, .diacriticInsensitive],
locale: .current)
foldedString.contains("hello") // true
这里的 folding(options:locale:) 方法中的 options 参数可以控制消除大小写和变音符号等差异。另外,还有一种更简洁的方法 localizedStandardContains(_:) 也能实现相同的功能:
originalString.loca
超级会员免费看
订阅专栏 解锁全文
3172

被折叠的 条评论
为什么被折叠?



