如何在javascript中将法语字符转换为英文字符

时间:2012-04-03 08:06:35

标签: javascript regex

这里我有一个法语和平等的英文字符。

法语:'ËÀËâÏÏÏÏÏÏçç<ç<ç

英语:'E A I A A I I A I O O O O O O O O O U U U U U U U O y y y y y y y y y y y y y y y y y y

我在javascript上做了以下功能.quiz_text是一个textarea。

这个功能只取代了法语元音字符。而且一些法语元音字符(Ã)并没有取代英语字符。我必须转换那些提到的法语字符。

任何人都可以帮我在javascript上将这些法语角色翻译成英文吗?

function checkgsm(){

    var quiz_text =document.getElementById('quiz_text');

    var s= quiz_text.value;


    var rExps=[ /[\xC0-\xC2]/g, /[\xE0-\xE2]/g,
    /[\xC8-\xCA]/g, /[\xE8-\xEB]/g,
    /[\xCC-\xCE]/g, /[\xEC-\xEE]/g,
    /[\xD2-\xD4]/g, /[\xF2-\xF4]/g,
    /[\xD9-\xDB]/g, /[\xF9-\xFB]/g ];

    var repChar=['A','a','E','e','I','i','O','o','U','u'];

    for(var i=0; i<rExps.length; i++)
    s=s.replace(rExps[i],repChar[i]);

    return s;
}

2 个答案:

答案 0 :(得分:2)

您可以使用iconv功能:

$this->_data = iconv("utf-8","ascii//TRANSLIT", JRequest::get('post'));

答案 1 :(得分:1)

在大多数情况下,做antyrat所说的,但如果你想要更多控制,你可能想要使用preg_replace:

$search = array('X1', 'X2', 'X3');
$replace = array('Y2', 'Y2', 'Y3');

$string = "X1X3X2";

echo str_replace($search, $replace, $string);

会打印:

Y1Y3Y2