RecognizedWordUnit.LexicalForm Egenskap

Definition

Hämtar den onormaliserade texten i ett känt ord.

public:
 property System::String ^ LexicalForm { System::String ^ get(); };
public string LexicalForm { get; }
member this.LexicalForm : string
Public ReadOnly Property LexicalForm As String

Egenskapsvärde

Returnerar en String som innehåller texten i ett känt ord, utan någon normalisering.

Exempel

I följande exempel visas en verktygsrutin som genererar text i något av tre format: lexikal (med ), LexicalFormnormaliserad (med hjälp av Text) och fonetik (med ).Pronunciation Textutdata hämtas från en ReadOnlyCollection<T> av RecognizedWordUnit objekten, som hämtas från Words egenskapen på RecognizedPhrase objektet.

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;
}

Kommentarer

I de flesta fall är värdena som returneras av Text och LexicalForm identiska. Igenkänningsmotorer kan dock använda talnormalisering för att returnera mer användarvänliga eller talspråkliga textrepresentationer av ljudindata.

Talnormalisering är användningen av specialkonstruktioner eller symboler för att uttrycka tal skriftligen. Normalisering kan till exempel ersätta de talade orden "en dollar och sexton cent" med "$1.16" i utdatatexten.

Gäller för

Se även