Bagikan melalui


RecognizedWordUnit.LexicalForm Properti

Definisi

Mendapatkan teks kata yang tidak dinormalisasi dari kata yang dikenali.

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

Nilai Properti

Mengembalikan teks berisi String kata yang dikenali, tanpa normalisasi apa pun.

Contoh

Contoh berikut menunjukkan rutinitas utilitas yang menghasilkan teks dalam salah satu dari tiga format: leksikal (menggunakan LexicalForm), dinormalisasi (menggunakan Text), dan fonetik (menggunakan Pronunciation). Output teks diperoleh dari ReadOnlyCollection<T>RecognizedWordUnit objek, yang diperoleh dari Words properti pada RecognizedPhrase objek.

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

Keterangan

Dalam kebanyakan kasus, nilai yang dikembalikan oleh Text dan LexicalForm identik. Namun, mesin pengenalan dapat menggunakan normalisasi ucapan untuk mengembalikan representasi teks input audio yang lebih ramah pengguna atau kolokal.

Normalisasi ucapan adalah penggunaan konstruksi atau simbol khusus untuk mengekspresikan ucapan secara tertulis. Misalnya, normalisasi dapat mengganti kata lisan "satu dolar dan enam belas sen" dengan "$ 1,16" dalam teks output.

Berlaku untuk

Lihat juga