【问题标题】:How to remove emoji from string - ios?如何从字符串中删除表情符号 - ios?
【发布时间】:2019-11-21 06:57:31
【问题描述】:

我看到很多答案都是基于字符的unicode和emoji范围的unicode,但是emoji每年都在增加,很难维护。有没有更简单的实现方式?

【问题讨论】:

    标签: ios unicode emoji


    【解决方案1】:

    实际上似乎有一个非常简单的解决方案:

    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?

    您可能还需要删除一些额外的空格,但这是另一回事。

    【讨论】:

    • 谢谢!但“isEmoji”仅适用于 iOS 10.2 或更高版本。我们需要支持 iOS 10.0 和 10.1。
    • @Yvan 似乎是您可能想在问题中提出的相当重要的信息和平,您不觉得吗?由于这是一篇公开帖子,因此对于将来遇到此问题的人来说,答案似乎是可以接受的。对于您的具体情况,我建议您创建一个新问题。
    • 我用你的方法测试过,还是有问题。 let filtered = removeEmojisFromString("Hi,1999????") print(filtered) 结果是Hi,,缺少“1999”是错误的。
    • @Yvan 我很抱歉。请检查更新版本。
    猜你喜欢
    • 2015-03-17
    • 1970-01-01
    • 1970-01-01
    • 2017-08-23
    • 2020-03-28
    • 2020-06-16
    • 2021-06-13
    • 2016-11-08
    • 2019-11-20
    相关资源
    最近更新 更多