Aracılığıyla paylaş


RecognizedWordUnit.LexicalForm Özellik

Tanım

Tanınan bir sözcüğün normalleştirilmiş olmayan metnini alır.

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

Özellik Değeri

String

Herhangi bir String normalleştirme olmadan tanınan bir sözcüğün metnini içeren bir döndürür.

Örnekler

Aşağıdaki örnek, üç biçimden birini kullanarak metin oluşturan bir yardımcı program yordamını gösterir: sözcük LexicalForm (kullanarak), normalleştirilmiş (kullanarak) ve Text phonetic Pronunciation (kullanarak). Metin çıktısı, nesnedeki ReadOnlyCollection<T> RecognizedWordUnit özelliğinden elde edilen Words nesnelerinden RecognizedPhrase elde edilir.

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

Açıklamalar

Çoğu durumda ve tarafından döndürülen değerler Text LexicalForm aynıdır. Ancak tanıma altyapıları, ses girişinin daha kolay veya aynı metin gösterimlerini geri dönmek için konuşma normalleştirmeyi kullanabilir.

Konuşma normalleştirme, konuşmayı yazarken ifade etmek için özel yapıların veya sembollerin kullanımıdır. Örneğin normalleştirme, "bir dolar ve on altı sent" sözcüklerini çıkış metninde "$1,16" ile değiştirebilir.

Şunlara uygulanır

Ayrıca bkz.