Udostępnij za pośrednictwem


RecognizedWordUnit.Text Właściwość

Definicja

Pobiera znormalizowany tekst dla rozpoznanego wyrazu.

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

Wartość właściwości

Ciąg zawierający znormalizowane dane wyjściowe tekstu dla danego słowa wejściowego.

Przykłady

W poniższym przykładzie przedstawiono procedurę narzędzia, która generuje ciąg w jednym z trzech formatów: leksykalny (przy użyciu ), znormalizowany (przy użyciu metody ) i fonetyczny (przy użyciu LexicalFormTextmetody Pronunciation). Dane wyjściowe tekstu są uzyskiwane z ReadOnlyCollection<T>RecognizedWordUnit obiektu , który jest uzyskiwany z Words właściwości obiektu RecognizedPhrase .

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

Uwagi

W większości przypadków wartości zwracane przez Text i LexicalForm będą identyczne. Jednak aparaty rozpoznawania mogą używać normalizacji mowy, aby zwrócić bardziej przyjazne dla użytkownika lub potoczne reprezentacje tekstu wejściowego dźwięku.

Normalizacja mowy to użycie specjalnych konstrukcji lub symboli do wyrażania mowy na piśmie. Na przykład normalizacja może zastąpić słowa mówione "dolar i szesnaście centów" tekstem wyjściowym "$1.16".

Dotyczy