2017-09-29 2 views
-2

Je veux écrire la fonction qui remplacera tous les caractères dans la variable avec son instance unicode par exemple:Remplacer les caractères de chaîne entière avec son unicode (/ vous ...)

Text = Text.ConvertToUniCode(); 

Mais le principal problème que je « m est l'expérience avec ombles qui ne comprennent pas la langue anglaise par exemple:

var IllegalChars = ["ə","Ə","ç","Ç","ı","I","ğ","Ğ","ö","Ö","ş","Ş","ü","Ü"]; 

Ceux qui ne pouvaient pas comprendre la question:

var text= "əkalöğç"; 
text = ReplaceToUniCode(text); //It will return "\u0259\u018F\u00E7\u00C7\u0131..." 

PS: Je n'utilise pas Node.js

Répondre

-1

Je recommanderais d'utiliser punycode.js (fonctionne dans le navigateur et dans le nœud).

// punycode works in browser and in Node 
var punycode = require('punycode'); 

function zeros(codepoint) { 
    if (codepoint === 0x0000) return '0000'; 
    if (0x0000 < codepoint && codepoint <= 0x000F) return '000' 
    if (0x000F < codepoint && codepoint <= 0x00FF) return '00' 
    if (0x0FF < codepoint && codepoint <= 0xFFF) return '0' 
    return ''; 
} 

var x = punycode.ucs2.decode('əkalöğç').map(function(codepoint) { 
    return '\\u' + zeros(codepoint) + codepoint.toString(16); 
}).join(''); 
console.log(x) 
// → "\u0259\u006b\u0061\u006c\u00f6\u011f\u00e7" 

Cela fonctionne pour tous caractères (anglais, non-anglais, des caractères spéciaux, emoji).
Note: String.prototype.codePointAtdoesn't work pour tous les caractères à cause de UCS2 problems - cela ne fonctionne pas pour les emoji, et plus généralement, pour ce que l'on appelle les "points de code astral" représentés par les "paires de substitution". punycode.js fonctionne pour tous les caractères et est approuvé (il était à l'origine bundled dans Node.js).

+0

Toutefois, rien n'indique que l'OP utilise un nœud. – Cerbrus

+0

Merci beaucoup monsieur, je vais vérifier votre méthode :) –

+0

pourriez-vous écrire l'ensemble du code réalisable s'il vous plaît ... @James Lawson Merci je suppose que cette méthode est exactement ce que je veux, vous avez sauvé ma journée ... –