gpt4 book ai didi

javascript - 根据不正确的输入预测 JavaScript 字符串

转载 作者:行者123 更新时间:2023-11-28 14:07:12 26 4
gpt4 key购买 nike

我目前正在编写一个 Discord 机器人,想知道如果输入不正确是否可以预测所需的命令。

例如,我有这个单词列表:['help','meme','ping'],如果用户输入“hepl”,是否可以以某种方式“猜测”他们想要输入 help

最佳答案

一种选择是查找一个命令,其 levenshtein distance输入的值等于或小于 2:

// https://gist.github.com/andrei-m/982927
const getEditDistance=function(t,n){if(0==t.length)return n.length;if(0==n.length)return t.length;var e,h,r=[];for(e=0;e<=n.length;e++)r[e]=[e];for(h=0;h<=t.length;h++)r[0][h]=h;for(e=1;e<=n.length;e++)for(h=1;h<=t.length;h++)n.charAt(e-1)==t.charAt(h-1)?r[e][h]=r[e-1][h-1]:r[e][h]=Math.min(r[e-1][h-1]+1,Math.min(r[e][h-1]+1,r[e-1][h]+1));return r[n.length][t.length]};

const commands = ['help','meme','ping'];
const getCommand = (input) => {
if (commands.includes(input)) return input;
return commands.find(command => getEditDistance(input, command) <= 2);
};
console.log(getCommand('hepl'));

(2只是一个数字,随意选择你想要的容差 - 越高,猜测的命令越多,但误报也会越多)

关于javascript - 根据不正确的输入预测 JavaScript 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60929276/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com