WordsSegmenter Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Eine Segmenterklasse, die bereitgestellten Text in Wörter oder Wortstammsegmente segmentieren kann (abhängig von der jeweiligen Sprache).
public ref class WordsSegmenter sealed
/// [Windows.Foundation.Metadata.Activatable(Windows.Data.Text.IWordsSegmenterFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class WordsSegmenter final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.Data.Text.IWordsSegmenterFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class WordsSegmenter final
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Data.Text.IWordsSegmenterFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class WordsSegmenter
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Data.Text.IWordsSegmenterFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class WordsSegmenter
function WordsSegmenter(language)
Public NotInheritable Class WordsSegmenter
- Vererbung
- Attribute
Windows-Anforderungen
Gerätefamilie |
Windows 10 (eingeführt in 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)
|
Hinweise
Für Sprachen, die keine Leerzeichen zwischen Wörtern verwenden (z. B. Japanisch, Chinesisch, Koreanisch und Thailändisch), ist die Verwendung eines Segmenters die einzige Möglichkeit, einzelne Wörter für Textverarbeitungsszenarien wie Schlüsselwort (keyword) Suche zu erhalten.
Die beim Erstellen dieses Objekts angegebene Sprache wird mit den Sprachen abgeglichen, in denen Worttrennungen im System vorhanden sind, und es werden die besten verfügbaren Regeln für die Wortsegmentierung verwendet. Die Sprache muss keine der von der App unterstützten Sprachen sein. Wenn keine unterstützten Sprachregeln speziell für diese Sprache verfügbar sind, werden die sprachneutralen Regeln verwendet (eine Implementierung von Unicode Standard Annex #29 Unicode Text Segmentation), und die ResolvedLanguage-Eigenschaft ist auf "und" (unbestimmte Sprache) festgelegt.
Für Schlüsselwort (keyword) Suchszenarien wird immer empfohlen, einen Segmenter in der Sprache des Textinhalts anzufordern.
Bei Rechtschreibprüfungsszenarien können einige Sprachsegmentierer (z. B. Deutsch) mehrere Wortstammsegmente für ein einzelnes zusammengesetztes Wort zurückgeben. Im Gegensatz dazu können die Rechtschreibprüfungs-APIs erwarten, dass die Wörter als einzelnes Wort zusammengehalten werden. Für solche Sprachen können Sie sprachneutrale Segmentierungsregeln erzwingen, indem Sie explizit den Segmenter "und" anfordern. Dies wird jedoch die Qualität der Unterbrechung von Sprachen ohne Leerzeichen erheblich verringern. Daher wird empfohlen, die Language.Script-API zu verwenden, um zu ermitteln, ob die Inhaltssprache eines der folgenden Skripts ohne Leerzeichen verwendet:
Skript | Sprache |
---|---|
Bopo | Bopomofo |
Brah | Brahmi |
Egyp | Ägyptische Hieroglyphen |
Goth | Gotisch |
Hängen | Hangul |
Hängen | Hiragana |
Hängen | Alter Hangul |
Hani | Han |
Ital | Altitalisch |
Java | Javanisch |
Kana | Katakana |
Khar | Charoshthi |
Khmr | Khmer |
Laoo | Laotisch |
Lisu | Lisu |
Mymr | Myanmar |
Talu | Neu-Tai-Lue |
Thailändisch | Thailändisch |
Tibt | Tibetisch |
Xsux | Keilschrift |
Yiii | Yi |
Wenn keines dieser Skripts gefunden wird, sollte es sicher sein, "und" für die Rechtschreibprüfungsszenariosegmentierung zu verwenden.
Konstruktoren
WordsSegmenter(String) |
Erstellt ein WordsSegmenter-Objekt . Eine Beschreibung der Verwendung der für diesen Konstruktor bereitgestellten Sprache finden Sie in der Einführung in WordsSegmenter . |
Eigenschaften
ResolvedLanguage |
Ruft die Sprache der Regeln ab, die von diesem WordsSegmenter-Objekt verwendet werden. "und" (undetermined) wird zurückgegeben, wenn wir sprachneutrale Regeln verwenden. |
Methoden
GetTokenAt(String, UInt32) |
Bestimmt und gibt den Wort- oder Wortstamm zurück, der einen angegebenen Index im bereitgestellten Text enthält oder folgt. |
GetTokens(String) |
Bestimmt und gibt alle Wörter oder Wortstamme im bereitgestellten Text zurück. |
Tokenize(String, UInt32, WordSegmentsTokenizingHandler) |
Ruft den bereitgestellten Handler mit zwei Iteratoren auf, die die Wörter vor und nach einem bestimmten Index in den bereitgestellten Text durchlaufen. |