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

또한보십시오