c#API使用wordnet - 什么更好?

时间:2010-09-17 14:43:55

标签: c# .net asp.net wordnet

我正在做一个基于网络的chattebot系统,我的问题就是这些。

  • 我需要获得一个特定的用户问题并检查其中的一些特定关键字(例如,取名词)并查找同义词以及拼写检查吗?

因此wordnet的最佳C#API是什么? 那么我想要做的是从文本框中获取一个句子并将其用于同义词和拼写检查,并且在wrodnet网站上有c#ASP和独立应用程序API。最好的方法是什么?

我可以使用wordnet和其他c#API ??

进行拼写检查和同义词检查

如果你能给我一些解决方案,我将不胜感激。

非常感谢。

2 个答案:

答案 0 :(得分:1)

如果可以,我可以使用内置拼写检查器的WPF,只需在ASP.NET项目中添加PresentationFramework的引用,就可以以编程方式创建一个WPF文本框,用于拼写检查等。

    List<string> getSuggestions(string text)
    {
        System.Windows.Controls.TextBox wpfTextBox = new System.Windows.Controls.TextBox();
        wpfTextBox.AcceptsReturn = true;
        wpfTextBox.AcceptsTab = true;
        wpfTextBox.SpellCheck.IsEnabled = true;
        wpfTextBox.Text = text;

        int index = 0;
        List<string> suggestions = new List<string>();

        while ((index = wpfTextBox.GetNextSpellingErrorCharacterIndex(index, System.Windows.Documents.LogicalDirection.Forward)) != -1)
        {
            string currentError = wpfTextBox.Text.Substring(index, wpfTextBox.GetSpellingErrorLength(index));
            suggestions.Add(currentError);

            foreach (string suggestion in wpfTextBox.GetSpellingError(index).Suggestions)
            {
                suggestions.Add(suggestion);
            }
        }
        return suggestions;
    }

答案 1 :(得分:1)

此处列出的API:http://wordnet.princeton.edu/wordnet/related-projects/#.NET, Matt Gerber(http://ptl.sys.virginia.edu/ptl/members/matthew-gerber/software#WordNet_API)是最好的。

这不是一个很好的API,但它可以正常工作,这是我需要的良好开端。

我还没试过Proxem's Antelope,因为它看起来更像是一个重量级应用,然后是一个简单的API。它可能会更强大,并且解析引擎可能非常有用用于您正在做的事情。