var T2W = require("numbers2words");
var translator = new T2W("EN_US");
const { wordsToNumbers } = require('words-to-numbers');
let numbr = wordsToNumbers(message.content.toLowerCase());
message.channel.send(translator.toWords(numbr + 1));
所以它在bot.on('message', async message) =>
中。我尝试使用其他{。{3}}和words-to-numbers之类的Node.js库。
我的想法是,例如,有人说“三”,然后机器人通过将消息的数字("three"
转换为3
)并加上1
,以“四”的方式进行响应。 (4
),然后将其转换回原义数字("four"
)。
我将感谢任何能回答这个问题的人,我一无所知! =)
答案 0 :(得分:0)
您可以使用这两个库将数字转换为单词,反之亦然:
单词到数字:https://www.npmjs.com/package/words-to-numbers
数字到单词:https://www.npmjs.com/package/number-to-words
链接包含有关如何使用库的更多信息。
您可以使自己的函数接受数字或带文字的数字,然后返回该数字和带文字的数字。为此,您可以(据我所知)创建几个数组,例如["one", "two", "three"]
,["hundred", thousand", "million"]
并使用RegEx。
我在StackOverflow上找到了一个类似的帖子,您可以在其中查看如何编写自己的代码:Convert digits into words with JavaScript。
顺便说一句,由于忘记了括号,您将收到语法错误。
您写道:
bot.on("message", async message) => {});
应为:
bot.on("message", async (message) => {});
或bot.on("message, async message => {});