Sdílet prostřednictvím


GrammarBuilder Konstruktory

Definice

Inicializuje novou instanci GrammarBuilder třídy .

Přetížení

GrammarBuilder()

Inicializuje novou prázdnou GrammarBuilder instanci třídy .

GrammarBuilder(Choices)

Inicializuje novou instanci GrammarBuilder třídy ze sady alternativ.

GrammarBuilder(SemanticResultKey)

Inicializuje novou instanci GrammarBuilder třídy ze sémantického klíče.

GrammarBuilder(SemanticResultValue)

Inicializuje novou instanci GrammarBuilder třídy ze sémantické hodnoty.

GrammarBuilder(String)

Inicializuje novou instanci GrammarBuilder třídy ze sekvence slov.

GrammarBuilder(String, SubsetMatchingMode)

Inicializuje novou instanci GrammarBuilder třídy pro podmnožinu posloupnosti slov.

GrammarBuilder(GrammarBuilder, Int32, Int32)

Inicializuje novou instanci GrammarBuilder třídy z opakovaného prvku.

GrammarBuilder(String, Int32, Int32)

Inicializuje novou instanci GrammarBuilder třídy ze sekvence slov v String a určuje, kolikrát String lze opakovat.

Poznámky

Instance této třídy lze také získat implicitními převody z jiných tříd nebo kombinací objektu GrammarBuilder s druhým objektem z nového GrammarBuilderobjektu . Další informace najdete v Implicit tématu metody a Addition .

Pokud chcete přidat omezení k existujícímu GrammarBuilderobjektu , použijte Addmetody , AppendAppendDictation, AppendRuleReference, a AppendWildcard a Addition operátor .

Důležité

Rozpoznávání řeči může vyvolat výjimku při použití gramatiky rozpoznávání řeči, která obsahuje duplicitní sémantické prvky se stejným názvem klíče nebo více sémantických prvků, které by mohly opakovaně měnit hodnotu stejného sémantického prvku.

Další informace o vytváření a používání gramatiky rozpoznávání řeči najdete v tématu Rozpoznávání řeči.

GrammarBuilder()

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou prázdnou GrammarBuilder instanci třídy .

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

Příklady

Následující příklad používá GrammarBuilder objekty a Choices k vytvoření gramatiky, která dokáže rozpoznat některou ze dvou frází, "Make background colorChoice" nebo "Set background to colorChoice".

Příklad používá Choices objekt k vytvoření seznamu přijatelných hodnot pro colorChoice z pole String objektů. Objekt Choices je obdobou elementu one-of ve specifikaci SRGS a obsahuje sadu alternativních frází, z nichž kterákoli může být rozpoznána při mluvené řeči. Příklad také používá Choices objekt k seskupení pole dvou GrammarBuilder objektů do dvojice alternativních frází, které výsledná gramatika dokáže rozpoznat. Alternativní slova nebo fráze jsou součástí většiny gramatik a Choices objekt poskytuje tuto funkci pro gramatiky vytvořené pomocí GrammarBuilder.

Příklad nakonec vytvoří Grammar objekt z objektu GrammarBuilder vytvořeného z objektu Choices .

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

Poznámky

Pokud chcete přidat pravidla k existujícímu GrammarBuilder objektuAdd, použijte metody , AppendAppendDictation, AppendRuleReference, a AppendWildcard a Addition operátor .

Důležité

Rozpoznávání řeči může vyvolat výjimku při použití gramatiky rozpoznávání řeči, která obsahuje duplicitní sémantické prvky se stejným názvem klíče nebo více sémantických prvků, které by mohly opakovaně měnit hodnotu stejného sémantického prvku.

Viz také

Platí pro

GrammarBuilder(Choices)

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou instanci GrammarBuilder třídy ze sady alternativ.

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)

Parametry

alternateChoices
Choices

Sada alternativ.

Příklady

Následující příklad používá GrammarBuilder objekty a Choices k vytvoření gramatiky, která dokáže rozpoznat některou ze dvou frází, "Make background colorChoice" nebo "Set background to colorChoice".

Příklad používá Choices objekt k vytvoření seznamu přijatelných hodnot pro colorChoice z pole String objektů. Objekt Choices je obdobou one-of prvku ve specifikaci SRGS a obsahuje sadu alternativních frází, z nichž kterákoli může být rozpoznána při mluvené řeči. Příklad také používá Choices objekt k seskupení pole dvou GrammarBuilder objektů do dvojice alternativních frází, které výsledná gramatika dokáže rozpoznat. Alternativní slova nebo fráze jsou součástí většiny gramatik a Choices objekt poskytuje tuto funkci pro gramatiky vytvořené pomocí GrammarBuilder.

Příklad nakonec vytvoří Grammar objekt z objektu GrammarBuilder vytvořeného z objektu Choices .

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

Poznámky

Další informace o vytváření gramatiky rozpoznávání řeči, která obsahuje alternativy, najdete v tématu Použití možností k vytvoření gramatiky GrammarBuilder.

Viz také

Platí pro

GrammarBuilder(SemanticResultKey)

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou instanci GrammarBuilder třídy ze sémantického klíče.

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)

Parametry

key
SemanticResultKey

Sémantický klíč.

Příklady

Následující příklad vytvoří gramatiku rozpoznávání řeči, která dokáže rozpoznat dvě fráze, "Make background colorChoice" a "Set background to colorChoice", kde colorChoice je vybrána ze sady barev. Gramatika umožňuje uživateli vyslovit libovolný z několika názvů barev a vrátí aplikaci sémantické informace o rozpoznaném názvu barvy.

V příkladu se používá jeden SemanticResultKey , pomocí kterého můžete načíst SemanticValue objekt přidružený k barvě vyslovované uživatelem. Pokud například vstup obsahuje frázi "Nastavit pozadí na červenou", výsledek rozpoznávání obsahuje sémantickou hodnotu "#FF0000", kterou můžete načíst pomocí obslužné rutiny události SpeechRecognized .

V příkladu se pomocí Stringobjektů , SemanticResultKeyChoices, SemanticResultValue, a GrammarBuilder vytvoří omezení obsažená v posledním GrammarBuilder objektu bothPhrases. Nakonec příklad vytvoří Grammar objekt z dokončeného GrammarBuilderobjektu .

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

Poznámky

Když vytvoříte GrammarBuilder instanci z objektu SemanticResultValue , přidáte do gramatiky sémantické informace, které se můžou vrátit ve výsledku rozpoznávání. K sémantickým informacím ve výsledku rozpoznávání můžete přistupovat pomocí Semantics vlastnosti RecognizedPhrase, která je k dispozici v obslužné rutině SpeechRecognized události. GrammarBuilder Pokud definuje SemanticResultKey, lze použít k načtení sémantických informací ve výsledku rozpoznávání, který je přidružen ke klíči. Podívejte se na příklad pro Append(SemanticResultKey)a podívejte se také na a SemanticResultValueSemanticResultKey.

Důležité

Při vytváření GrammarBuilder objektů, které obsahují SemanticResultValue instance nebo SemanticResultKey , ujistěte se, že se vyhnete vytváření duplicitních sémantických prvků se stejným názvem klíče nebo více sémantických prvků, které by mohly opakovaně měnit Value vlastnost objektu SemanticValue . Rozpoznávání řeči může vyvolat výjimku, pokud narazí na tyto okolnosti.

Viz také

Platí pro

GrammarBuilder(SemanticResultValue)

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou instanci GrammarBuilder třídy ze sémantické hodnoty.

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)

Parametry

value
SemanticResultValue

Sémantická hodnota nebo pár název/hodnota.

Příklady

Následující příklad vytvoří gramatiku rozpoznávání řeči, která dokáže rozpoznat dvě fráze, "Make background colorChoice" a "Set background to colorChoice", kde colorChoice je vybrána ze sady barev. Gramatika umožňuje uživateli vyslovit libovolný z několika názvů barev a vrátí aplikaci sémantické informace o rozpoznaném názvu barvy.

V příkladu se používá jeden SemanticResultKey , pomocí kterého můžete načíst SemanticValue objekt přidružený k barvě vyslovované uživatelem. Pokud například vstup obsahuje frázi "Nastavit pozadí na červenou", výsledek rozpoznávání obsahuje sémantickou hodnotu "#FF0000", kterou můžete načíst pomocí obslužné rutiny události SpeechRecognized .

V příkladu se pomocí Stringobjektů , SemanticResultKeyChoices, SemanticResultValue, a GrammarBuilder vytvoří omezení obsažená v posledním GrammarBuilder objektu bothPhrases. Nakonec příklad vytvoří Grammar objekt z dokončeného GrammarBuilderobjektu .

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

Poznámky

Když vytvoříte GrammarBuilder instanci z objektu SemanticResultValue , přidáte do gramatiky sémantické informace, které se můžou vrátit ve výsledku rozpoznávání. K sémantickým informacím ve výsledku rozpoznávání můžete přistupovat pomocí Semantics vlastnosti RecognizedPhrase, která je k dispozici v obslužné rutině SpeechRecognized události. GrammarBuilder Pokud definuje SemanticResultKey, lze použít k načtení sémantických informací ve výsledku rozpoznávání, který je přidružen ke klíči. Podívejte se na příklad pro Append(SemanticResultKey)a podívejte se také na a SemanticResultValueSemanticResultKey.

Důležité

Při vytváření GrammarBuilder objektů, které obsahují SemanticResultValue instance nebo SemanticResultKey , ujistěte se, že se vyhnete vytváření duplicitních sémantických prvků se stejným názvem klíče nebo více sémantických prvků, které by mohly opakovaně měnit Value vlastnost objektu SemanticValue . Rozpoznávání řeči může vyvolat výjimku, pokud narazí na tyto okolnosti.

Viz také

Platí pro

GrammarBuilder(String)

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou instanci GrammarBuilder třídy ze sekvence slov.

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)

Parametry

phrase
String

Posloupnost slov.

Příklady

Následující příklad používá GrammarBuilder objekty a Choices k vytvoření gramatiky, která dokáže rozpoznat některou ze dvou frází, "Make background colorChoice" nebo "Set background to colorChoice".

Po vytvoření seznamu přijatelných hodnot pro colorChoice pomocí objektu Choices inicializuje příklad dva GrammarBuilder objekty makePhrase a setPhrasepomocí řetězce jako argumentu.

Příklad nakonec vytvoří Grammar objekt z objektu Choices přetypování na GrammarBuilder objekt.

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

Poznámky

Fráze představuje přesnou mluvenou frázi, kterou gramatika rozpoznávání řeči rozpozná. Další informace o vytváření gramatiky rozpoznávání řeči, která obsahuje řetězce, najdete v tématu Použití řetězců k vytvoření gramatiky GrammarBuilder.

Viz také

Platí pro

GrammarBuilder(String, SubsetMatchingMode)

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou instanci GrammarBuilder třídy pro podmnožinu posloupnosti slov.

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)

Parametry

phrase
String

Posloupnost slov.

subsetMatchingCriteria
SubsetMatchingMode

Režim porovnávání, který gramatika rozpoznávání řeči používá k rozpoznávání fráze.

Příklady

Následující příklad vytvoří gramatiku rozpoznávání řeči pro každou SubsetMatchingMode hodnotu a gramatiku pro výběr mezi gramatikami odpovídajícího režimu. Pokud je hodnota phrase "jeden dva tři čtyři pět šest sedm", pak gramatika dílčí posloupnosti rozpozná vstup "dva tři čtyři", ale ne vstup "jeden tři pět". Gramatika Seřazená podmnožina však rozpozná oba tyto vstupy.

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

Poznámky

Parametr phrase představuje frázi, kterou gramatika rozpoznávání řeči rozpozná. Parametr subsetMatchingMode určuje podmnožinu fráze, kterou lze vyslovit, aby bylo možné úspěšně rozpoznat celou frázi. Můžete ho použít k vytvoření gramatiky se seznamem položek, které mají dlouhé názvy, aniž by uživatelé museli vyslovit celé jméno, aby odpovídaly položce.

Další informace o odpovídajících režimech najdete v tématu SubsetMatchingMode. Další informace o vytváření gramatiky rozpoznávání řeči, která obsahuje řetězce, najdete v tématu Použití řetězců k vytvoření gramatiky GrammarBuilder.

Viz také

Platí pro

GrammarBuilder(GrammarBuilder, Int32, Int32)

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou instanci GrammarBuilder třídy z opakovaného prvku.

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)

Parametry

builder
GrammarBuilder

Opakující se prvek.

minRepeat
Int32

Minimální počet vstupů odpovídajících elementu definovanému parametrem builder musí dojít k vytvoření shody.

maxRepeat
Int32

Maximální počet vstupů odpovídajících elementu definovanému pomocí builder může dojít k vytvoření shody.

Příklady

Následující příklad vytvoří gramatiku rozpoznávání řeči pro objednání pizzy. Začíná volitelnou úvodní frází, po které následuje jedna až čtyři poleva a končí slovem "pizza".

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

Poznámky

Pokud je hodnota minRepeat 0, pak nový GrammarBuilder představuje volitelný prvek.

Hodnota minRepeat musí být větší nebo rovna 0 a menší nebo rovna hodnotě maxRepeat.

Důležité

Pokud zadáváte opakování pro GrammarBuilder objekty, které obsahují SemanticResultValue nebo SemanticResultKey instance, ujistěte se, že se vyhnete vytváření duplicitních sémantických prvků se stejným názvem klíče nebo více sémantických prvků, které by mohly opakovaně měnit Value vlastnost objektu SemanticValue . Rozpoznávání řeči může vyvolat výjimku, pokud narazí na tyto okolnosti.

Viz také

Platí pro

GrammarBuilder(String, Int32, Int32)

Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs
Zdroj:
GrammarBuilder.cs

Inicializuje novou instanci GrammarBuilder třídy ze sekvence slov v String a určuje, kolikrát String lze opakovat.

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)

Parametry

phrase
String

Opakovaná posloupnost slov.

minRepeat
Int32

Minimální počet výskytů vstupu odpovídajícího frázi, aby se shodovaly.

maxRepeat
Int32

Maximální počet výskytů shody vstupu odpovídajícího frázi.

Příklady

Následující příklad vytvoří gramatiku rozpoznávání řeči pro objednání pizzy. Začíná volitelnou úvodní frází, po které následuje jedna až čtyři poleva a končí slovem "pizza".

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

Poznámky

Pokud je hodnota minRepeat 0, pak nový GrammarBuilder představuje volitelný prvek.

Hodnota minRepeat musí být větší nebo rovna 0 a menší nebo rovna hodnotě maxRepeat. Další informace o vytváření gramatiky rozpoznávání řeči, která obsahuje řetězce, najdete v tématu Použití řetězců k vytvoření gramatiky GrammarBuilder.

Viz také

Platí pro