Aracılığıyla paylaş


GrammarBuilder Oluşturucular

Tanım

GrammarBuilder sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

GrammarBuilder()

sınıfının yeni, boş bir örneğini GrammarBuilder başlatır.

GrammarBuilder(Choices)

Sınıfın GrammarBuilder yeni bir örneğini bir dizi alternatiften başlatır.

GrammarBuilder(SemanticResultKey)

Semantik anahtardan sınıfının yeni bir örneğini GrammarBuilder başlatır.

GrammarBuilder(SemanticResultValue)

Sınıfın GrammarBuilder yeni bir örneğini anlamsal değerden başlatır.

GrammarBuilder(String)

Bir dizi sözcükten sınıfının yeni bir örneğini GrammarBuilder başlatır.

GrammarBuilder(String, SubsetMatchingMode)

Bir sözcük dizisinin GrammarBuilder alt kümesi için sınıfının yeni bir örneğini başlatır.

GrammarBuilder(GrammarBuilder, Int32, Int32)

Yinelenen bir öğeden sınıfının yeni bir örneğini GrammarBuilder başlatır.

GrammarBuilder(String, Int32, Int32)

içindeki sözcük String dizisinden sınıfının yeni bir örneğini GrammarBuilder başlatır ve kaç kez String tekrar edilebileceğini belirtir.

Açıklamalar

Bu sınıfın örnekleri, diğer sınıflardan örtük dönüştürmelerle veya nesnesini yeni GrammarBuilderbir GrammarBuilder öğesinden ikinci bir nesnesiyle birleştirerek de elde edilebilir. Daha fazla bilgi için ve Addition yöntemlerine Implicit bakın.

Var olan GrammarBuilderbir öğesine kısıtlamalar eklemek için , Append, AppendDictation, AppendRuleReferenceve yöntemlerini ve AppendWildcard işlecini Addition kullanınAdd.

Önemli

Konuşma tanıyıcı, aynı anahtar adına sahip yinelenen semantik öğeler veya aynı semantik öğenin değerini tekrar tekrar değiştirebilen birden çok semantik öğe içeren bir konuşma tanıma dil bilgisi kullanırken özel durum oluşturabilir.

Konuşma tanıma dil bilgisi oluşturma ve kullanma hakkında daha fazla bilgi için bkz . Konuşma Tanıma.

GrammarBuilder()

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

sınıfının yeni, boş bir örneğini GrammarBuilder başlatır.

public:
 GrammarBuilder();
public GrammarBuilder ();
Public Sub New ()

Örnekler

Aşağıdaki örnek, "Arka plan rengi yapChoice" veya "Arka planı colorChoice olarak ayarla" ifadelerinden birini tanıyabilen bir dil bilgisi oluşturmak için ve Choices nesnelerini kullanırGrammarBuilder.

Örnek, bir Choices nesne dizisinden colorChoice için kabul edilebilir değerlerin String listesini oluşturmak için bir nesne kullanır. Nesne Choices , SRGS belirtimindeki öğeye one-of benzer ve herhangi biri konuşulduğunda tanınabilen bir dizi alternatif ifade içerir. Örnek ayrıca, Choices iki GrammarBuilder nesneden oluşan bir diziyi sonuç dil bilgisinin tanıyabileceği bir çift alternatif tümcecik halinde gruplandırmak için bir nesnesi kullanır. Alternatif sözcükler veya tümcecikler çoğu dil bilgisinin bir bileşenidir ve Choices nesnesi ile GrammarBuilderyapılan dil bilgisi için bu işlevselliği sağlar.

Örnek son olarak bir Grammar nesneden oluşturulan bir GrammarBuilderChoices nesne oluşturur.

private Grammar CreateColorGrammar()
{

  // Create a set of color choices.
  Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
  GrammarBuilder colorElement = new GrammarBuilder(colorChoice);

  // Create grammar builders for the two versions of the phrase.
  GrammarBuilder makePhrase = new GrammarBuilder("Make background");
  makePhrase.Append(colorElement);
  GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
  setPhrase.Append(colorElement);

  // Create a Choices for the two alternative phrases, convert the Choices
  // to a GrammarBuilder, and construct the Grammar object from the result.
  GrammarBuilder bothPhrases = new GrammarBuilder();
  Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
  bothPhrases.Append(bothChoices);
  Grammar grammar = new Grammar(bothPhrases);
  grammar.Name = "backgroundColor";
  return grammar;
}

Açıklamalar

Varolan GrammarBuilder bir nesneye kurallar eklemek için , Append, AppendDictation, AppendRuleReferenceve yöntemlerini ve AppendWildcard işlecini Addition kullanınAdd.

Önemli

Konuşma tanıyıcı, aynı anahtar adına sahip yinelenen semantik öğeler veya aynı semantik öğenin değerini tekrar tekrar değiştirebilecek birden çok semantik öğe içeren bir konuşma tanıma dil bilgisi kullanırken özel durum oluşturabilir.

Ayrıca bkz.

Şunlara uygulanır

GrammarBuilder(Choices)

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

Sınıfın GrammarBuilder yeni bir örneğini bir dizi alternatiften başlatır.

public:
 GrammarBuilder(System::Speech::Recognition::Choices ^ alternateChoices);
public GrammarBuilder (System.Speech.Recognition.Choices alternateChoices);
new System.Speech.Recognition.GrammarBuilder : System.Speech.Recognition.Choices -> System.Speech.Recognition.GrammarBuilder
Public Sub New (alternateChoices As Choices)

Parametreler

alternateChoices
Choices

Alternatifler kümesi.

Örnekler

Aşağıdaki örnek, "Arka plan rengi yapChoice" veya "Arka planı colorChoice olarak ayarla" ifadelerinden birini tanıyabilen bir dil bilgisi oluşturmak için ve Choices nesnelerini kullanırGrammarBuilder.

Örnek, bir Choices nesne dizisinden colorChoice için kabul edilebilir değerlerin String listesini oluşturmak için bir nesne kullanır. Nesne Choices , SRGS belirtimindeki öğeye one-of benzer ve herhangi biri konuşulduğunda tanınabilen bir dizi alternatif tümcecik içerir. Örnek ayrıca, Choices iki GrammarBuilder nesneden oluşan bir diziyi sonuç dil bilgisinin tanıyabileceği bir çift alternatif tümcecik halinde gruplandırmak için bir nesnesi kullanır. Alternatif sözcükler veya tümcecikler çoğu dil bilgisinin bir bileşenidir ve Choices nesnesi ile GrammarBuilderyapılan dil bilgisi için bu işlevselliği sağlar.

Örnek son olarak bir Grammar nesneden oluşturulan bir GrammarBuilderChoices nesne oluşturur.

private Grammar CreateColorGrammar()
{

  // Create a set of color choices.
  Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
  GrammarBuilder colorElement = new GrammarBuilder(colorChoice);

  // Create grammar builders for the two versions of the phrase.
  GrammarBuilder makePhrase = new GrammarBuilder("Make background");
  makePhrase.Append(colorElement);
  GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
  setPhrase.Append(colorElement);

  // Create a Choices for the two alternative phrases, convert the Choices
  // to a GrammarBuilder, and construct the grammar from the result.
  Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
  Grammar grammar = new Grammar((GrammarBuilder)bothChoices);
  grammar.Name = "backgroundColor";
  return grammar;
}

Açıklamalar

Alternatifler içeren bir konuşma tanıma dil bilgisi oluşturma hakkında daha fazla bilgi için bkz. GrammarBuilder Dilbilgisi Oluşturmak için Seçimleri Kullanma.

Ayrıca bkz.

Şunlara uygulanır

GrammarBuilder(SemanticResultKey)

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

Semantik anahtardan sınıfının yeni bir örneğini GrammarBuilder başlatır.

public:
 GrammarBuilder(System::Speech::Recognition::SemanticResultKey ^ key);
public GrammarBuilder (System.Speech.Recognition.SemanticResultKey key);
new System.Speech.Recognition.GrammarBuilder : System.Speech.Recognition.SemanticResultKey -> System.Speech.Recognition.GrammarBuilder
Public Sub New (key As SemanticResultKey)

Parametreler

key
SemanticResultKey

Anlam anahtarı.

Örnekler

Aşağıdaki örnek, "Arka plan rengi yapChoice" ve "Arka planı colorChoice olarak ayarla" ifadelerini tanıyabilen bir konuşma tanıma dil bilgisi oluşturur. Burada colorChoice bir renk kümesinden seçilir. Dil bilgisi, kullanıcının çeşitli renk adlarından herhangi birini konuşmasına olanak tanır ve tanınan renk adı hakkındaki anlamsal bilgileri uygulamaya döndürür.

Örnekte, kullanıcı tarafından konuşulan renkle ilişkilendirilmiş olan öğesini alabildiğiniz SemanticValue bir tek SemanticResultKey kullanılır. Örneğin, giriş "Arka planı kırmızıya ayarla" tümceciği içeriyorsa, tanıma sonucu olay için SpeechRecognized bir işleyici kullanarak alabileceğiniz "#FF0000" anlamsal değerini içerir.

Örnekte , ve nesneleri, son GrammarBuilder nesnesinde bothPhrasesyer alan tüm kısıtlamaları oluşturmak için kullanılırSemanticResultKeyChoicesStringSemanticResultValue.GrammarBuilder Son olarak, örnek tamamlanmış GrammarBuilderöğesinden bir Grammar nesne oluşturur.

private Grammar CreateColorGrammar()
{

  // Create a set of color choices.
  // Include semantic information about each of the colors.
  Choices colorChoice = new Choices();

  GrammarBuilder colorBuilder = new GrammarBuilder("red");
  SemanticResultValue colorValue =
    new SemanticResultValue(colorBuilder, "#FF0000");
  colorChoice.Add(new GrammarBuilder(colorValue));

  colorBuilder = new GrammarBuilder("green");
  colorValue = new SemanticResultValue(colorBuilder, "#00FF00");
  colorChoice.Add(new GrammarBuilder(colorValue));

  colorBuilder = new GrammarBuilder("blue");
  colorValue = new SemanticResultValue(colorBuilder, "#0000FF");
  colorChoice.Add(new GrammarBuilder(colorValue));

  GrammarBuilder colorElement = new GrammarBuilder(colorChoice);

  // Create grammar builders for the two versions of the phrase.
  GrammarBuilder makePhrase = new GrammarBuilder("Make background");
  makePhrase.Append(colorElement);
  GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
  setPhrase.Append(colorElement);

  // Create a Choices object for the two alternative phrases.
  Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
  GrammarBuilder bothPhrases = new GrammarBuilder(bothChoices);

  // Create the semantic key for referencing the color information.
  SemanticResultKey colorKey =
    new SemanticResultKey("ColorCode", bothPhrases);
  bothPhrases = new GrammarBuilder(colorKey);

  // Construct the Grammar object from the GrammarBuilder.
  Grammar grammar = new Grammar(bothPhrases);
  grammar.Name = "backgroundColor";
  return grammar;
}

Açıklamalar

Bir SemanticResultValue nesneden örnek GrammarBuilder oluşturduğunuzda, tanıma sonucunda döndürülebilecek dil bilgisine semantik bilgiler eklersiniz. Tanıma sonucundaki anlam bilgilerine, olayının Semantics işleyicisinde SpeechRecognized bulunan özelliğini RecognizedPhrasekullanarak erişebilirsiniz. GrammarBuilder bir tanımlarsaSemanticResultKey, anahtarla ilişkili bir tanıma sonucundaki anlamsal bilgileri almak için kullanılabilir. örneğine Append(SemanticResultKey)ve ayrıca ve SemanticResultKeybölümüne bakınSemanticResultValue.

Önemli

veya SemanticResultKey içeren SemanticResultValue nesneler oluştururkenGrammarBuilder, aynı anahtar adına sahip yinelenen semantik öğeler veya bir SemanticValue nesnenin özelliğini tekrar tekrar değiştirebilecek Value birden çok semantik öğe oluşturmaktan kaçının. Konuşma tanıyıcısı bu durumlarla karşılaşırsa bir özel durum oluşturabilir.

Ayrıca bkz.

Şunlara uygulanır

GrammarBuilder(SemanticResultValue)

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

Sınıfın GrammarBuilder yeni bir örneğini anlamsal değerden başlatır.

public:
 GrammarBuilder(System::Speech::Recognition::SemanticResultValue ^ value);
public GrammarBuilder (System.Speech.Recognition.SemanticResultValue value);
new System.Speech.Recognition.GrammarBuilder : System.Speech.Recognition.SemanticResultValue -> System.Speech.Recognition.GrammarBuilder
Public Sub New (value As SemanticResultValue)

Parametreler

value
SemanticResultValue

Anlamsal değer veya ad/değer çifti.

Örnekler

Aşağıdaki örnek, "Arka plan rengi yapChoice" ve "Arka planı colorChoice olarak ayarla" ifadelerini tanıyabilen bir konuşma tanıma dil bilgisi oluşturur. Burada colorChoice bir renk kümesinden seçilir. Dil bilgisi, kullanıcının çeşitli renk adlarından herhangi birini konuşmasına olanak tanır ve tanınan renk adı hakkındaki anlamsal bilgileri uygulamaya döndürür.

Örnekte, kullanıcı tarafından konuşulan renkle ilişkilendirilmiş olan öğesini alabildiğiniz SemanticValue bir tek SemanticResultKey kullanılır. Örneğin, giriş "Arka planı kırmızıya ayarla" tümceciği içeriyorsa, tanıma sonucu olay için SpeechRecognized bir işleyici kullanarak alabileceğiniz "#FF0000" anlamsal değerini içerir.

Örnekte , ve nesneleri, son GrammarBuilder nesnesinde bothPhrasesyer alan tüm kısıtlamaları oluşturmak için kullanılırSemanticResultKeyChoicesStringSemanticResultValue.GrammarBuilder Son olarak, örnek tamamlanmış GrammarBuilderöğesinden bir Grammar nesne oluşturur.

private Grammar CreateColorGrammar()
{

  // Create a set of color choices.
  // Include semantic information about each of the colors.
  Choices colorChoice = new Choices();

  GrammarBuilder colorBuilder = new GrammarBuilder("red");
  SemanticResultValue colorValue =
    new SemanticResultValue(colorBuilder, "#FF0000");
  colorChoice.Add(new GrammarBuilder(colorValue));

  colorBuilder = new GrammarBuilder("green");
  colorValue = new SemanticResultValue(colorBuilder, "#00FF00");
  colorChoice.Add(new GrammarBuilder(colorValue));

  colorBuilder = new GrammarBuilder("blue");
  colorValue = new SemanticResultValue(colorBuilder, "#0000FF");
  colorChoice.Add(new GrammarBuilder(colorValue));

  GrammarBuilder colorElement = new GrammarBuilder(colorChoice);

  // Create grammar builders for the two versions of the phrase.
  GrammarBuilder makePhrase = new GrammarBuilder("Make background");
  makePhrase.Append(colorElement);
  GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
  setPhrase.Append(colorElement);

  // Create a Choices for the two alternative phrases.
  Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
  GrammarBuilder bothPhrases = new GrammarBuilder(bothChoices);

  // Create the semantic key for referencing the color information.
  SemanticResultKey colorKey =
    new SemanticResultKey("ColorCode", bothPhrases);
  bothPhrases = new GrammarBuilder(colorKey);

  // Construct the grammar from the grammar builder.
  Grammar grammar = new Grammar(bothPhrases);
  grammar.Name = "backgroundColor";
  return grammar;
}

Açıklamalar

Bir SemanticResultValue nesneden örnek GrammarBuilder oluşturduğunuzda, tanıma sonucunda döndürülebilecek dil bilgisine semantik bilgiler eklersiniz. Tanıma sonucundaki anlam bilgilerine, olayının Semantics işleyicisinde SpeechRecognized bulunan özelliğini RecognizedPhrasekullanarak erişebilirsiniz. GrammarBuilder bir tanımlarsaSemanticResultKey, anahtarla ilişkili bir tanıma sonucundaki anlamsal bilgileri almak için kullanılabilir. örneğine Append(SemanticResultKey)ve ayrıca ve SemanticResultKeybölümüne bakınSemanticResultValue.

Önemli

veya SemanticResultKey içeren SemanticResultValue nesneler oluştururkenGrammarBuilder, aynı anahtar adına sahip yinelenen semantik öğeler veya bir SemanticValue nesnenin özelliğini tekrar tekrar değiştirebilecek Value birden çok semantik öğe oluşturmaktan kaçının. Konuşma tanıyıcısı bu durumlarla karşılaşırsa bir özel durum oluşturabilir.

Ayrıca bkz.

Şunlara uygulanır

GrammarBuilder(String)

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

Bir dizi sözcükten sınıfının yeni bir örneğini GrammarBuilder başlatır.

public:
 GrammarBuilder(System::String ^ phrase);
public GrammarBuilder (string phrase);
new System.Speech.Recognition.GrammarBuilder : string -> System.Speech.Recognition.GrammarBuilder
Public Sub New (phrase As String)

Parametreler

phrase
String

Sözcüklerin dizisi.

Örnekler

Aşağıdaki örnek, "Arka plan rengi yapChoice" veya "Arka planı colorChoice olarak ayarla" ifadelerinden birini tanıyabilen bir dil bilgisi oluşturmak için ve Choices nesnelerini kullanırGrammarBuilder.

bir nesne kullanarak ChoicescolorChoice için kabul edilebilir değerlerin listesini oluşturduktan sonra, örnek, bağımsız değişken olarak bir dize kullanarak ve setPhraseolmak üzere iki GrammarBuilder nesne makePhrase başlatır.

Örnek son olarak bir nesneden nesneye GrammarChoices türeten bir GrammarBuilder nesne oluşturur.

private Grammar CreateColorGrammar()
{

  // Create a set of color choices.
  Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
  GrammarBuilder colorElement = new GrammarBuilder(colorChoice);

  // Create grammar builders for the two versions of the phrase.
  GrammarBuilder makePhrase = new GrammarBuilder("Make background");
  makePhrase.Append(colorElement);
  GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
  setPhrase.Append(colorElement);

  // Create a Choices for the two alternative phrases, convert the Choices
  // to a GrammarBuilder, and construct the Grammar object from the result.
  Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
  Grammar grammar = new Grammar((GrammarBuilder)bothChoices);
  grammar.Name = "backgroundColor";
  return grammar;
}

Açıklamalar

tümcecik, konuşma tanıma dil bilgisinin tanıyabileceği tam olarak konuşulan bir tümceciği temsil eder. Dizeler içeren bir konuşma tanıma dil bilgisi oluşturma hakkında daha fazla bilgi için bkz. GrammarBuilder Dilbilgisi Oluşturmak için Dizeleri Kullanma.

Ayrıca bkz.

Şunlara uygulanır

GrammarBuilder(String, SubsetMatchingMode)

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

Bir sözcük dizisinin GrammarBuilder alt kümesi için sınıfının yeni bir örneğini başlatır.

public:
 GrammarBuilder(System::String ^ phrase, System::Speech::Recognition::SubsetMatchingMode subsetMatchingCriteria);
public GrammarBuilder (string phrase, System.Speech.Recognition.SubsetMatchingMode subsetMatchingCriteria);
new System.Speech.Recognition.GrammarBuilder : string * System.Speech.Recognition.SubsetMatchingMode -> System.Speech.Recognition.GrammarBuilder
Public Sub New (phrase As String, subsetMatchingCriteria As SubsetMatchingMode)

Parametreler

phrase
String

Sözcüklerin dizisi.

subsetMatchingCriteria
SubsetMatchingMode

Konuşma tanıma dil bilgisinin tümceciği tanımak için kullandığı eşleştirme modu.

Örnekler

Aşağıdaki örnek, her SubsetMatchingMode değer için bir konuşma tanıma dil bilgisi ve eşleşen mod dil bilgisi arasında seçim için bir dil bilgisi oluşturur. değeri phrase "bir iki üç dört beş altı yedi" ise, Subsequence dil bilgisi "iki üç dört" girişini tanır, ancak "bir üç beş" girişini tanımaz. Ancak, Sıralı Alt Küme dil bilgisi bu girişlerin ikisini de tanır.

private static IEnumerable<Grammar>
  CreateMatchingModeGrammars(string phrase)
{
  List<Grammar> grammars = new List<Grammar>(5);

  Choices modeChoice = new Choices();
  Type enumType = typeof(SubsetMatchingMode);
  foreach (SubsetMatchingMode mode in Enum.GetValues(enumType))
  {
    string modeName = Enum.GetName(enumType, mode);
    modeName = BreakAtCaps(modeName);

    GrammarBuilder builder = new GrammarBuilder(phrase, mode);
    Grammar modeGrammar = new Grammar(builder);
    modeGrammar.Name = modeName;
    modeGrammar.Enabled = false;
    grammars.Add(modeGrammar);

    modeChoice.Add(modeName);
  }

  Grammar choiceGrammar = new Grammar(modeChoice);
  choiceGrammar.Name = "choice";
  grammars.Add(choiceGrammar);

  return grammars;
}

// Insert spaces preceding each uppercase letter in a string.
private static string BreakAtCaps(string item)
{
  if (item == null || item.Length == 0)
  {
    return item;
  }

  StringBuilder sb = new StringBuilder(item[0].ToString());
  for (int i = 1; i < item.Length; i++)
  {
    char c = item[i];
    if (char.IsUpper(c))
    {
      sb.Append(" ");
    }
    sb.Append(c);
  }

  return sb.ToString();
}

Açıklamalar

parametresi, phrase konuşma tanıma dil bilgisinin tanıyabileceği tümceciği temsil eder. parametresi, subsetMatchingMode tümceciği başarıyla tanımayı başarmak için söylenebilen tümceciği bir alt kümesini belirtir. Kullanıcıların bir öğeyle eşleşmesi için bir adın tamamını konuşmasına gerek kalmadan, uzun adlara sahip girişlerin listesiyle bir dil bilgisi oluşturmak için bunu kullanabilirsiniz.

Eşleşen modlar hakkında daha fazla bilgi için bkz SubsetMatchingMode. . Dizeler içeren bir konuşma tanıma dil bilgisi oluşturma hakkında daha fazla bilgi için bkz. GrammarBuilder Dilbilgisi Oluşturmak için Dizeleri Kullanma.

Ayrıca bkz.

Şunlara uygulanır

GrammarBuilder(GrammarBuilder, Int32, Int32)

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

Yinelenen bir öğeden sınıfının yeni bir örneğini GrammarBuilder başlatır.

public:
 GrammarBuilder(System::Speech::Recognition::GrammarBuilder ^ builder, int minRepeat, int maxRepeat);
public GrammarBuilder (System.Speech.Recognition.GrammarBuilder builder, int minRepeat, int maxRepeat);
new System.Speech.Recognition.GrammarBuilder : System.Speech.Recognition.GrammarBuilder * int * int -> System.Speech.Recognition.GrammarBuilder
Public Sub New (builder As GrammarBuilder, minRepeat As Integer, maxRepeat As Integer)

Parametreler

builder
GrammarBuilder

Yinelenen öğe.

minRepeat
Int32

Tarafından tanımlanan builder öğeyle eşleşen girişin eşleşme oluşturması gereken en az sayı.

maxRepeat
Int32

tarafından tanımlanan builder öğeyle eşleşen girişin en fazla kaç kez eşleşme oluşturabileceği.

Örnekler

Aşağıdaki örnek, pizza sipariş etmek için bir konuşma tanıma dil bilgisi oluşturur. İsteğe bağlı, açma tümceciğiyle başlar, ardından bir-dört topping ile başlar ve "pizza" sözcüğüyle kapanır.

private static Grammar CreatePizzaGrammar()
{

  // Create a Choices object from a string array of alternative toppings.
  Choices toppings = new Choices(new string[] {
    "cheese", "mushroom", "tomato", "onion",
    "anchovy", "chicken", "pepperoni"});

  // Create a GrammarBuilder and append the Choices object.
  GrammarBuilder andToppings = new GrammarBuilder("and", 0, 1);
  andToppings.Append(toppings);

  // Construct the phrase.
  GrammarBuilder gb = new GrammarBuilder("I would like a", 0, 1);
  gb.Append(toppings);
  gb.Append(new GrammarBuilder(andToppings, 0, 3));
  gb.Append("pizza");

  // Create the Grammar from the GrammarBuilder.
  Grammar grammar = new Grammar(gb);
  grammar.Name = "Pizza Order";

  return grammar;
}

Açıklamalar

değeri minRepeat 0 ise, yeni GrammarBuilder isteğe bağlı bir öğeyi temsil eder.

değeri minRepeat 0'dan büyük veya buna eşit ve değerinden maxRepeatküçük veya eşit olmalıdır.

Önemli

veya SemanticResultKey örnekleri içeren SemanticResultValue nesneler için GrammarBuilder yinelemeler belirttiğinizde, aynı anahtar adına sahip yinelenen semantik öğeler veya bir SemanticValue nesnenin özelliğini tekrar tekrar değiştirebilecek Value birden çok semantik öğe oluşturmaktan kaçının. Konuşma tanıyıcısı bu durumlarla karşılaşırsa bir özel durum oluşturabilir.

Ayrıca bkz.

Şunlara uygulanır

GrammarBuilder(String, Int32, Int32)

Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs
Kaynak:
GrammarBuilder.cs

içindeki sözcük String dizisinden sınıfının yeni bir örneğini GrammarBuilder başlatır ve kaç kez String tekrar edilebileceğini belirtir.

public:
 GrammarBuilder(System::String ^ phrase, int minRepeat, int maxRepeat);
public GrammarBuilder (string phrase, int minRepeat, int maxRepeat);
new System.Speech.Recognition.GrammarBuilder : string * int * int -> System.Speech.Recognition.GrammarBuilder
Public Sub New (phrase As String, minRepeat As Integer, maxRepeat As Integer)

Parametreler

phrase
String

Yinelenen sözcük dizisi.

minRepeat
Int32

Tümcecikle eşleşen girişin eşleşme oluşturması için en az kaç kez gerçekleşmesi gerektiği.

maxRepeat
Int32

Tümcecikle eşleşen girişin eşleşme oluşturabileceği en fazla sayı.

Örnekler

Aşağıdaki örnek, pizza sipariş etmek için bir konuşma tanıma dil bilgisi oluşturur. İsteğe bağlı, açma tümceciğiyle başlar, ardından bir-dört topping ile başlar ve "pizza" sözcüğüyle kapanır.

private static Grammar CreatePizzaGrammar()
{

  // Create a Choices object with alternatives for toppings.
  Choices toppings = new Choices(new string[] {
    "cheese", "mushroom", "tomato", "onion",
    "anchovy", "chicken", "pepperoni"});

  // Create a GrammarBuilder and append the Choices object.
  GrammarBuilder andToppings = new GrammarBuilder("and", 0, 1);
  andToppings.Append(toppings);

  // Construct the phrase.
  GrammarBuilder gb = new GrammarBuilder("I would like a", 0, 1);
  gb.Append(toppings);
  gb.Append(new GrammarBuilder(andToppings, 0, 3));
  gb.Append("pizza");

  // Create the Grammar from the GrammarBuilder.
  Grammar grammar = new Grammar(gb);
  grammar.Name = "Pizza Order";

  return grammar;
}

Açıklamalar

değeri minRepeat 0 ise, yeni GrammarBuilder isteğe bağlı bir öğeyi temsil eder.

değeri minRepeat 0'dan büyük veya buna eşit ve değerinden maxRepeatküçük veya buna eşit olmalıdır. Dizeler içeren bir konuşma tanıma dil bilgisi oluşturma hakkında daha fazla bilgi için bkz. GrammarBuilder Dilbilgisi Oluşturmak için Dizeleri Kullanma.

Ayrıca bkz.

Şunlara uygulanır