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

标签 javascript unicode ascii transliteration

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

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

我需要和贝壳一样的效果 iconv -f UTF-8 -t 'ASCII//TRANSLIT'但在 Vanilla Javascript中。

最佳答案

使用来自 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]; 
    }) );
  }
})();

您可以将其扩展为仅包含您想要的字符。

关于javascript - 如何在 Javascript 中将 Unicode 音译为 ASCII?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41652046/

相关文章:

Android,日文字 rune 件名比较问题

java - servlet中的编码问题

javascript - 有效的正则表达式特定名称模式

c# - 从 Request.Files 中删除文件

c# - 用文本替换损坏的图像图标

javascript - 将上下文传递给 Handlebars 部分

java - 哪些声明有效?

c - 字符串序列分析器

regex - 如何在SQL Server中比较Unicode字符?

java - 显示给定字符的 ASCII 值