RecognizedWordUnit.LexicalForm Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient le texte non normalisé d'un mot reconnu.
public:
property System::String ^ LexicalForm { System::String ^ get(); };
public string LexicalForm { get; }
member this.LexicalForm : string
Public ReadOnly Property LexicalForm As String
Valeur de propriété
Retourne une String contenant le texte d'un mot reconnu, sans aucune normalisation.
Exemples
L’exemple suivant illustre une routine utilitaire qui génère du texte dans l’un des trois formats suivants : lexical (using LexicalForm ), normalized (using Text ) et Phonetic (using Pronunciation ). La sortie de texte est obtenue à partir d’un ReadOnlyCollection<T> RecognizedWordUnit objet d’objets, qui est obtenu à partir de la Words propriété sur l' RecognizedPhrase objet.
internal enum WordType
{
Text,
Normalized = Text,
Lexical,
Pronunciation
}
internal static string stringFromWordArray(
ReadOnlyCollection<RecognizedWordUnit> words,
WordType type)
{
string text = "";
foreach (RecognizedWordUnit word in words)
{
string wordText = "";
if (type == WordType.Text || type == WordType.Normalized)
{
wordText = word.Text;
}
else if (type == WordType.Lexical)
{
wordText = word.LexicalForm;
}
else if (type == WordType.Pronunciation)
{
wordText = word.Pronunciation;
}
else
{
throw new InvalidEnumArgumentException(
String.Format("[0}: is not a valid input", type));
}
// Use display attribute
if ((word.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0)
{
wordText += " ";
}
if ((word.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0)
{
wordText += " ";
}
if ((word.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0)
{
wordText = wordText.TrimStart();
}
if ((word.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0)
{
wordText = wordText.TrimEnd();
}
text += wordText;
}
return text;
}
Remarques
Dans la plupart des cas, les valeurs retournées par Text et LexicalForm sont identiques. Toutefois, les moteurs de reconnaissance peuvent utiliser la normalisation vocale pour retourner des représentations textuelles plus conviviales ou plus courantes de l’entrée audio.
La normalisation vocale consiste à utiliser des constructions ou des symboles spéciaux pour exprimer la parole en écriture. Par exemple, la normalisation peut remplacer les mots prononcés « dollar et seize centimes » par « $1,16 » dans le texte de sortie.