将非ASCII字符(umlauts,口音...)转换为其最接近的ASCII等效(slug创建) [英] Convert non-ASCII characters (umlauts, accents...) to their closest ASCII equivalent (slug creation)
本文介绍了将非ASCII字符(umlauts,口音...)转换为其最接近的ASCII等效(slug创建)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在 JavaScript
中寻找将字符串中的非 - ASCII
字符转换为最接近的等效字符,类似于 PHP
iconv
功能。例如,如果输入字符串RånadespåSkyttis iÖ-vik
,则应转换为 Ranades pa skyttis i o-vik
。我看了一下 phpjs
,但 iconv $ c
解决方案
我找到的最简单的方法:
var str =RånadespåSkyttis iÖ-vik;
var combining = / [\\\̀ -\\\ͯ] / g;
console.log(str.normalize('NFKD')。replace(combining,''));
I am looking for way in JavaScript
to convert non-ASCII
characters in a string to their closest equivalent, similarly to what the PHP
iconv
function does. For instance if the input string is Rånades på Skyttis i Ö-vik
, it should be converted to Ranades pa skyttis i o-vik
. I had a look at phpjs
but iconv
isn't included.
Is it possible to perform such conversion in JavaScript, if so how?
解决方案
The easiest way I've found:
var str = "Rånades på Skyttis i Ö-vik";
var combining = /[\u0300-\u036F]/g;
console.log(str.normalize('NFKD').replace(combining, ''));
这篇关于将非ASCII字符(umlauts,口音...)转换为其最接近的ASCII等效(slug创建)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文