IWordFormsProvider

IWordFormsProvider interface

يحدد واجهة موفر نماذج الكلمات.

public interface IWordFormsProvider

طُرق

اسم وصف
GetWordForms(string) الحصول على نماذج الكلمات للكلمة المحددة. المصفوفة الناتجة لا تحتوي على الكلمة الأصلية.

ملاحظات

يتعلم أكثر

أمثلة

يوضح المثال التالي كيفية تنفيذ موفر نماذج الكلمات المخصصة.

public class SimpleWordFormsProvider : IWordFormsProvider
{
    public string[] GetWordForms(string word)
    {
        List<string> result = new List<string>();

        // افترض أن كلمة الإدخال بصيغة الجمع ، ثم نضيف المفرد
        if (word.Length > 2 &&
            word.EndsWith("es", StringComparison.InvariantCultureIgnoreCase))
        {
            result.Add(word.Substring(0, word.Length - 2));
        }
        if (word.Length > 1 &&
            word.EndsWith("s", StringComparison.InvariantCultureIgnoreCase))
        {
            result.Add(word.Substring(0, word.Length - 1));
        }

        // ثم افترض أن كلمة الإدخال بصيغة المفرد ، نضيف الجمع
        if (word.Length > 1 &&
            word.EndsWith("y", StringComparison.InvariantCultureIgnoreCase))
        {
            result.Add(word.Substring(0, word.Length - 1) + "is");
        }
        result.Add(word + "s");
        result.Add(word + "es");
        // يتم تنفيذ جميع القواعد في فئة EnglishWordFormsProvider

        return result.ToArray();
    }
}

يوضح المثال التالي كيفية تعيين موفر نماذج كلمات مخصصة للاستخدام.

string indexFolder = @"c:\MyIndex\";
string documentsFolder = @"c:\MyDocuments\";
  
// إنشاء فهرس في المجلد المحدد
Index index = new Index(indexFolder);
  
// فهرسة المستندات من المجلد المحدد
index.Add(documentsFolder);
 
// تعيين مثيل مزود نماذج الكلمات المخصصة
index.Dictionaries.WordFormsProvider = new SimpleWordFormsProvider();
 
// إنشاء مثيل خيارات البحث
SearchOptions options = new SearchOptions();
options.UseWordFormsSearch = true; // تمكين البحث عن نماذج الكلمات
  
// البحث في الفهرس
SearchResult result = index.Search("relative", options);
  
// يمكن العثور على الكلمات التالية:
// نسبي
// نسبيs

أنظر أيضا