【发布时间】:2019-11-21 06:57:31
【问题描述】:
我看到很多答案都是基于字符的unicode和emoji范围的unicode,但是emoji每年都在增加,很难维护。有没有更简单的实现方式?
【问题讨论】:
我看到很多答案都是基于字符的unicode和emoji范围的unicode,但是emoji每年都在增加,很难维护。有没有更简单的实现方式?
【问题讨论】:
实际上似乎有一个非常简单的解决方案:
func removeEmojisFromString(_ string: String) -> String {
string.unicodeScalars.filter { !($0.properties.isEmoji && $0.properties.isEmojiPresentation) }.map { String($0) }.joined()
}
经过测试
let filtered = removeEmojisFromString("This is actually pretty easy ? iOS has a native categorization for emoji? ?")
print(filtered)
结果是This is actually pretty easy iOS has a native categorization for emoji?
您可能还需要删除一些额外的空格,但这是另一回事。
【讨论】:
let filtered = removeEmojisFromString("Hi,1999????") print(filtered) 结果是Hi,,缺少“1999”是错误的。