Compartir vía


RecognizedWordUnit.Text Propiedad

Definición

Obtiene el texto normalizado de una palabra reconocida.

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

Valor de propiedad

Cadena que contiene la salida de texto normalizada para una palabra de entrada determinada.

Ejemplos

En el ejemplo siguiente se muestra una rutina de utilidad que genera una cadena en uno de los tres formatos: léxico (mediante LexicalForm), normalizado (mediante Text) y fonético (mediante Pronunciation). La salida de texto se obtiene de un ReadOnlyCollection<T> objeto de RecognizedWordUnit , que se obtiene de la Words propiedad en el RecognizedPhrase objeto .

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

Comentarios

En la mayoría de los casos, los valores devueltos por Text y LexicalForm serán idénticos. Sin embargo, los motores de reconocimiento pueden usar la normalización de voz para devolver representaciones de texto más fáciles de usar o coloquiales de entrada de audio.

La normalización de voz es el uso de construcciones o símbolos especiales para expresar la voz por escrito. Por ejemplo, la normalización puede reemplazar las palabras habladas "un dólar y dieciséis centavos" por "$1,16" en el texto de salida.

Se aplica a