2017-09-22 2 views
0

Ich kenne keine über emoji Zeichen Unicode und versuchen, alle Emoji vom Eingang zu entfernen, fand einen Code:jquery Entfernen Sie alle Emoji sind neue

var ranges = [ 
    '\ud83c[\udf00-\udfff]', // U+1F300 to U+1F3FF 
    '\ud83d[\udc00-\ude4f]', // U+1F400 to U+1F64F 
    '\ud83d[\ude80-\udeff]' // U+1F680 to U+1F6FF 
]; 

JSFiddle (Kopie Emojis von CSS-Abschnitt Test)

es wird einige, aber nicht neue Emojis entfernen. Wie kann dieser neue Emojis-Unicode-Bereich diesem Code hinzugefügt werden?

zum Beispiel wird diese nerd face Emojis nicht entfernen, und die Unicode ist here

Antwort

0
function removeEmoji(text) { 
    var res = ''; 

    for(var i = 0; i < text.length; i++) { 
    var c = text[i]; 

    // Get UTF-32 code 
    var code = c.charCodeAt(0); 
    if(code >= 0xd800 && code < 0xdc00) { 
     c += text[++i]; 
     code = (code - 0xd800) << 10; 
     code |= c.charCodeAt(1) - 0xdc00; 
     code += 0x10000; 
    } 

    // Skip Emoji symbols 
    if (code < 0x1f000 || code >= 0x1fa00) { 
     res += c; 
    } 
    } 

    return res 
} 

var s = removeEmoji('ab'); // 'ab' 
Verwandte Themen