WordsSegmenter Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Uma classe segmentador que é capaz de segmentar o texto fornecido em palavras ou hastes de palavra (dependendo do idioma específico).
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
- Herança
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10 (introduzida na 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v1.0)
|
Comentários
Para idiomas que não usam espaços entre palavras (como japonês, chinês, coreano e tailandês), o uso de um segmentador é a única maneira de obter palavras individuais para cenários de processamento textual, como palavra-chave pesquisa.
O idioma fornecido quando esse objeto é construído corresponde aos idiomas com separadores de palavras no sistema e as melhores regras de segmentação de palavras disponíveis são usadas. O idioma não precisa ser um dos idiomas com suporte do aplicativo. Se não houver regras de idioma com suporte disponíveis especificamente para esse idioma, as regras neutras de idioma serão usadas (uma implementação da Segmentação de Texto Unicode nº 29 do Anexo Padrão Unicode) e a propriedade ResolvedLanguage será definida como "und" (idioma indeterminado).
Para palavra-chave cenários de pesquisa, é sempre recomendável solicitar um segmentador no idioma do conteúdo do texto.
Para cenários de verificação ortográfica, alguns segmentadores de idioma (como alemão) podem retornar vários segmentos de palavras-tronco para uma única palavra composta. Por outro lado, as APIs de verificação ortográfica podem esperar que as palavras sejam mantidas juntas como uma única palavra. Para esses idiomas, você pode optar por forçar regras de segmentação neutras em idioma solicitando explicitamente o segmentador "und" (idioma indeterminado). No entanto, isso reduzirá consideravelmente a qualidade interruptiva de idiomas não espaçados. Portanto, é recomendável que você use a API Language.Script para determinar se a linguagem de conteúdo usa um dos seguintes scripts não espaçados:
Script | Idioma |
---|---|
Bopo | Bopomofo |
Mano | Brahmi |
Egyp | Hieróglifos egípcios |
Gótica | Gótico |
Travar | Hangul |
Travar | Hiragana |
Travar | Hangul antigo |
Hani | Han |
Ital | Itálico Antigo |
Java | Javanês |
Kana | Katakana |
Khar | Kharoshthi |
Khmr | Khmer |
Laoo | Lao |
Lisu | Lisu |
Mymr | Myanmar |
Talu | Tai Lue Novo |
Tailandês | Tailandês |
Tibt | Tibetano |
Xsux | Cuneiforme |
Yiii | Yi |
Se nenhum desses scripts for encontrado, será seguro usar "und" para segmentação de cenário de verificação ortográfica.
Construtores
WordsSegmenter(String) |
Cria um objeto WordsSegmenter . Consulte a introdução em WordsSegmenter para obter uma descrição de como o idioma fornecido a esse construtor é usado. |
Propriedades
ResolvedLanguage |
Obtém o idioma das regras usadas por este objeto WordsSegmenter . "und" (indeterminado) será retornado se estivermos usando regras neutras em idioma. |
Métodos
GetTokenAt(String, UInt32) |
Determina e retorna a palavra ou a palavra-tronco que contém ou segue um índice especificado no texto fornecido. |
GetTokens(String) |
Determina e retorna todas as palavras ou hastes de palavra no texto fornecido. |
Tokenize(String, UInt32, WordSegmentsTokenizingHandler) |
Chama o manipulador fornecido com dois iteradores que iteram pelas palavras antes e após um determinado índice no texto fornecido. |