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