افزودن یک واژه به واژه‌نامه‌ی خطایاب

وابستگی‌ها

SCICT.NLP.TextProofing.SpellChecker.dll

مثال

هنگام استفاده از کلاس PersianSpellChecker برای خطایابی املایی، در مواردی واژه‌ی مورد پردازش با این که واژه‌ای صحیح است، در واژه‌نامه‌ی خطایاب وجود ندارد و از این رو یک خطای املایی تشخیص داده می‌شود. در این موارد می‌توانید با استفاده از متد AddToDictionary واژه‌ی مورد نظر را به واژه‌نامه‌ی خطایاب افزود و از آن به بعد و در بارگذاری‌های مجدد نیز واژه‌ی مورد نظر به عنوان یک واژه‌ی صحیح زبان در نظر گرفته خواهد شد. از متد ContainWord نیز می‌توان برای کنترل موجود بودن یک واژه (با در نظر گرفتن شکل‌های تصریفی آن) در واژه‌نامه‌ی خطایاب استفاده نمود.

توصیه: همیشه ساده‌ترین شکل کلمه (ریشه) را به واژه‌نامه اضافه کنید.

Adding a Word to Spell Checker Dictionary
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
SpellCheckerConfig config = new SpellCheckerConfig { DicPath = @"dic.dat", EditDistance = 2, StemPath = @"stem.dat", SuggestionCount = 7 };
PersianSpellChecker spellChecker = new PersianSpellChecker(config);

// یک سیستم توزیع‌شده‌ی بیش‌مهیا باید
string[] sug1;
SuggestionType sugType1;
SpaceCorrectionState scs1;
bool val1 = spellChecker.CheckSpelling("بیش‌مهیا", "توزیع‌شده‌ی ", "باید", 7, out sug1, out sugType1, out scs1);
/*
 * val1 = false
 * sug1 = {"مقیاس"}
 */

val1 = spellChecker.ContainWord("بیش‌مهیا");
/*
 * val1 = false;
 */

bool val2 = spellChecker.AddToDictionary("بیش‌مهیا");
/*
 * val1 = false
 */

val1 = spellChecker.CheckSpelling("بیش‌مهیا", "توزیع‌شده‌ی ", "باید", 7, out sug1, out sugType1, out scs1);
/*
 * val1 = true
 * sug1 = {}
 */

val1 = spellChecker.ContainWord("بیش‌مهیا");
/*
 * val1 = true;
 */