如何在Javascript中将Unicode音译为ASCII?

时间:2017-01-14 16:04:27

标签: javascript unicode ascii transliteration

如何在纯Javascript中将Unicode字符音译为ASCII?

input:  'Ǐńťęř'
output: 'Inter'

我需要与shell iconv -f UTF-8 -t 'ASCII//TRANSLIT'类似的效果,但需要使用vanilla Javascript。

1 个答案:

答案 0 :(得分:0)

像这样使用Efficiently replace all accented characters in a string?中的答案:

var makeSortString = (function() {
  var translate_re = /[αβγ]/g; // etc.
  var translate = {
    "α": "a", // alpha - a
    "β": "b", // beta -- b
    "γ": "g"  // gamma - g
    // etc.
  };
  return function(s) {
    return ( s.replace(translate_re, function(match) { 
      return translate[match]; 
    }) );
  }
})();

您可以扩展它以仅包含所需的字符。