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
Δείτε επίσης
- χώρος ονομάτων GroupDocs.Search.Dictionaries
- συνέλευση GroupDocs.Search