如何解决请求特定Wiki页面的错误用户输入

时间:2016-05-27 19:47:10

标签: c# user-input wikipedia-api

我正在创建一个接受用户输入的Reddit bot,然后尝试从指定的维基百科页面获取一个表并将其发布到reddit。用户将指定专业拳击手的名字,机器人将尝试找到该拳击手的维基百科页面并发布他的专业记录表。

问题是这依赖于不可靠的用户输入。许多拳击手不是来自英语国家,他们的名字包含非英语字符。这导致很多名字拼写错误,最终导致失败。

我创建了一个尝试解析常用名称的方法:

public string FighterNameFixes(string fighter)
    {
        if (fighter.ToLower() == "julio cesar chavez" || fighter.ToLower() == "chavez")
        {
            return "Julio César Chávez";
        }
        else if (fighter.ToLower() == "julio cesar chavez jr." || fighter.ToLower() == "julio cesar chavez jr"
                  || fighter.ToLower() == "julio cesar chavez, jr" || fighter.ToLower() == "julio cesar chavez jr.")
        {
            return "Julio César Chávez Jr.";
        }
        else if (fighter.ToLower() == "roy jones jr" || fighter.ToLower() == "roy jones, jr"
                        || fighter.ToLower() == "roy jones jr." || fighter.ToLower() == "rjj")
        {
            return "Roy_Jones_Jr.";
        }
//continue for every boxer that has ever lived

如果找不到匹配项,并且回复过程失败,我会记录异常并继续。我想找到一种更具程序性的方法来解决这个问题。是否有一个库或API可以帮助我解决这样的拼写错误?

0 个答案:

没有答案