RecognizedWordUnit.LexicalForm Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nenormalizovaný text rozpoznaného slova.
public:
property System::String ^ LexicalForm { System::String ^ get(); };
public string LexicalForm { get; }
member this.LexicalForm : string
Public ReadOnly Property LexicalForm As String
Hodnota vlastnosti
Vrátí objekt String obsahující text rozpoznaného slova bez normalizace.
Příklady
Následující příklad ukazuje rutinu nástroje, která generuje text v jednom ze tří formátů: Lexikální (using LexicalForm ), Normalized (using Text ) a výslovnost (using Pronunciation ). Textový výstup se získá z ReadOnlyCollection<T> RecognizedWordUnit objektů, které se získávají z Words vlastnosti RecognizedPhrase objektu.
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;
}
Poznámky
Ve většině případů hodnoty vrácené funkcí Text a LexicalForm jsou identické. Moduly pro rozpoznávání ale můžou používat normalizaci řeči k vracení více uživatelsky přívětivých nebo Colloquial textových reprezentace zvukového vstupu.
Normalizace řeči je použití speciálních konstrukcí nebo symbolů pro rozpoznávání řeči při psaní. Například normalizace může nahradit mluvené slovo "a dolar a 16 centů" znakem "$1,16" ve výstupním textu.