亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

找出“字符串中的字符”是否為表情符號?

找出“字符串中的字符”是否為表情符號?

iOS
小怪獸愛吃肉 2019-10-06 15:48:53
我需要找出字符串中的字符是否是表情符號。例如,我有這個角色:let string = "?"let character = Array(string)[0]我需要確定該字符是否為表情符號。
查看完整描述

3 回答

?
千巷貓影

TA貢獻1829條經驗 獲得超7個贊

最簡單,最干凈,最快捷的方法是按照已知的emoji表情和dingbats范圍檢查字符串中每個字符的Unicode代碼點,如下所示:


extension String {


    var containsEmoji: Bool {

        for scalar in unicodeScalars {

            switch scalar.value {

            case 0x1F600...0x1F64F, // Emoticons

                 0x1F300...0x1F5FF, // Misc Symbols and Pictographs

                 0x1F680...0x1F6FF, // Transport and Map

                 0x2600...0x26FF,   // Misc symbols

                 0x2700...0x27BF,   // Dingbats

                 0xFE00...0xFE0F,   // Variation Selectors

                 0x1F900...0x1F9FF, // Supplemental Symbols and Pictographs

                 0x1F1E6...0x1F1FF: // Flags

                return true

            default:

                continue

            }

        }

        return false

    }


}


查看完整回答
反對 回復 2019-10-06
?
瀟湘沐

TA貢獻1816條經驗 獲得超6個贊

extension String {

    func containsEmoji() -> Bool {

        for scalar in unicodeScalars {

            switch scalar.value {

            case 0x3030, 0x00AE, 0x00A9,// Special Characters

            0x1D000...0x1F77F,          // Emoticons

            0x2100...0x27BF,            // Misc symbols and Dingbats

            0xFE00...0xFE0F,            // Variation Selectors

            0x1F900...0x1F9FF:          // Supplemental Symbols and Pictographs

                return true

            default:

                continue

            }

        }

        return false

    }

}

這是我的解決方法,具有更新的范圍。

查看完整回答
反對 回復 2019-10-06
  • 3 回答
  • 0 關注
  • 724 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號