在node.js

时间:2019-04-29 04:54:42

标签: javascript node.js google-cloud-functions

我使用从GitHub到项目的函数。

该功能在新用户注册时发送欢迎电子邮件,而在删除用户帐户时发送再见电子邮件。该功能正在加载到Firebase Cloud Function。

我正在尝试对代码进行补充,以便由用户的姓名确定他需要使用哪种语言发送消息。

示例:

如果使用希伯来语输入用户名,则该功能会向用户发送一条希伯来语消息。

如果使用俄语输入用户名,则该功能会向用户发送俄语信息。

如果使用英语输入用户名,则该功能会向用户发送一条英语消息。

注意:

这不与浏览器连接,因为用户将从android应用程序注册。在Firebase上进行用户身份验证后,他将从Firebase Cloud Function收到消息。

在node.js中,以下代码不起作用!

if (/^[a-zA-Z]+$/.test(text)) //if the English language 
{
  ...
} 
else //if the not English language
{
  ...
}

我将很乐意提供帮助!

也许还有另一种对消息进行本地化的解决方案?

谢谢!

4 个答案:

答案 0 :(得分:4)

您可以使用languagedetect node.js库来检测字符串的语言。

但是,由于您的要求是根据用户的语言发送消息,因此最好为他提供一个选择其偏好语言的选项,或者使用JavaScript使用navigator.language

答案 1 :(得分:0)

答案 2 :(得分:0)

也许您想使用此免费/付费选项

https://detectlanguage.com/

答案 3 :(得分:0)

您可以使用 franc 和 langs npm 来检测语言。 但首先,您需要安装 franc 和 langs 安装: 在 bash 中编写此代码

$node i franc langs

将此代码写入一个名为 index.js 的 js 文件中

const franc = require('franc');
const langs = require('langs');
const input = process.argv[2];
const langcode=franc(input);
if(langcode==='und'){
console.log("Sorry couldnot find the language");}
else{
const language=langs.where("3",langcode);
console.log(`Our guess : ${language.name}`);}

如何在bash中运行文件?

$ node {filename}.js '{sentence}'

https://github.com/hassamq/Language-guesser-node-js