Javascript 如何在用户键入时检测其语言

Javascript 如何在用户键入时检测其语言,javascript,Javascript,伙计们,我有一个问题,我必须知道用户在输入文本时使用的是哪种语言来处理一些形状不好的东西,我甚至看了一下,但这对我没有帮助,你们能帮我找到正确的代码吗? 我必须知道的语言是英语和波斯语:|谢谢: 我需要一些javascript帮助 检测语言是一个普通的if-else或switch用例无法解决的任务。。。你有一个电脑学习问题要解决,我的朋友 好的是,已经有疯狂的天才已经解决了你的问题,那么为什么不使用他们可用的解决方案呢 注册谷歌云平台 激活对Google Translate API的访问 获取A

伙计们,我有一个问题,我必须知道用户在输入文本时使用的是哪种语言来处理一些形状不好的东西,我甚至看了一下,但这对我没有帮助,你们能帮我找到正确的代码吗? 我必须知道的语言是英语和波斯语:|谢谢: 我需要一些javascript帮助


检测语言是一个普通的if-else或switch用例无法解决的任务。。。你有一个电脑学习问题要解决,我的朋友

好的是,已经有疯狂的天才已经解决了你的问题,那么为什么不使用他们可用的解决方案呢

注册谷歌云平台 激活对Google Translate API的访问 获取API的浏览器访问令牌。您需要这个令牌才能从JavaScript使用它。 现在连接好你的用户界面,让他们发挥魔力。 您的HTML将保持不变。只需确保还包括jQuery

<input type="text" id="give_me_the_lang" />
<div id="show_lang_in_here"></div>
要在响应中解析的是谷歌将返回的检测数组

{
    "data": {
       "detections": [
         [
           {
            "language": "de",
            "isReliable": false,
            "confidence": 0.049747143
           }
         ]
       ]
    }
}

这是一个非常复杂的计算结果的完美例子。。。所以,我想说,如果这个人给你一个猜测,就用它,如果这个人给你更多,就挑一个你认为最接近你的用户群的;在朝鲜或玻利维亚奎丘亚地区没有客户,是吗?

这是一个解决方案,它不会真正检测语言,只会检查用户输入的内容是否只包含英语字母。如果是的话,它用div写英语,否则它写波斯语。代码:

document.getElementById为_me _lang.addEventListenerkeyup提供函数{ 如果/^[a-zA-Z]+$/.testthis.value{ document.getElementByIdshow\u lang\u in\u here.innerHTML=英语; }否则{ document.getElementByIdshow\u lang\u in\u here.innerHTML=波斯语; } };
你想检测用户输入的语言吗?是的,这就是我想要的,这让你不得不依赖于在用户输入时检测语言?有用于拼写的浏览器扩展,这将使客户端上的任务充其量毫无意义。检测一种语言是一项非常复杂的操作,据我所知,只有office套件支持这种功能,我觉得这需要大量的编码。而且,据我记忆所及,他们的语言检测远不是万无一失的。我同意。您可以提供一个下拉列表,用户可以在其中选择要使用的语言。这样你就知道了。问题是用户会输入一个混合语言,rtl和ltr语言,所以我需要知道哪种语言是用来处理它的形状的,因为用rtl写ltr文本将是你在一个网站上看到的最糟糕的事情,而versatanx则是如此,我在寻找其他答案,我正在考虑这个解决方案,但我不知道怎么说:,但有一个问题,如果我先学波斯语,然后学英语,再学波斯语,它就可以正常工作了,但在那之后,它就不能检测到英语,或者如果我先学英语,然后学波斯语,它就可以工作了,但在那之后,如果我学英语,我就不能再继续工作了,如果你解出这个2,我会很高兴的:你能告诉我数字2的表达式吗?这个函数检查整个输入,如果它找到任何波斯语字符,结果将是波斯语。不管你按女巫的顺序进入。若要包含数字,请将表达式更改为:^[a-zA-Z0-9]+$如何仅检查最后一个单词?无论最后一个单词是波斯语还是英语,函数add var words=this.value.split;它根据输入创建单词数组。通过单词[words.length-1]你可以得到最后一个单词,如果条件允许,你可以检查它。另外,将正则表达式更改为/^[a-zA-Z0-9]*$/以使其包含空格和空字符串。好的,那么类似这样的内容呢。迈克。حالت چطوره؟. 这里show_lang_in_的文本从波斯语到英语,然后是波斯语。如果有人想检测文本语言,应该有更深入的分析。问题是,谷歌批准了那个国家,所以我不能在那里使用该url:|但tanx很多:@user3590110你仍然可以在加利福尼亚或弗吉尼亚获得一台免费的Tier EC2机器,并使用服务器密钥获取url。。。所以你问你的亚马逊服务器,他问谷歌……上面说你需要声明一个账单账户。显然这不是免费的。
$(function(){

    /* We want to listen to the keypress events from the user 
    *  Each time the user stops typing we wait a few milliseconds and then
    *  we ask Google to detect the language for us */
    var timeoutID;

    /* Replace this with your Google Translate API key */
    var myKey = 'XXXX';

    var detectLanguage = function(){

        $.ajax({
            method: 'GET',
            url: 'https://www.googleapis.com/language/translate/v2/detect',
            data: {
               key: myKey,
               q: $('#give_me_the_lang').val()
            }           
        }).done(function(response){

           /* Push the response to the UI */
           $('#show_lang_in_here').text(JSON.stringify(response.data.detections));
        });        
    };

    $('#give_me_the_lang').on('keyup, keypress, change', function(){
        clearTimeout(timeoutID);

        /* Lets wait half a second */
        setTimeout(detectLanguage, 500);
    });
});
{
    "data": {
       "detections": [
         [
           {
            "language": "de",
            "isReliable": false,
            "confidence": 0.049747143
           }
         ]
       ]
    }
}