GrammarBuilder Konstruktory
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Inicializuje novou instanci GrammarBuilder třídy.
Přetížení
| Name | Description |
|---|---|
| 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 z sémantického klíče. |
| GrammarBuilder(SemanticResultValue) |
Inicializuje novou instanci GrammarBuilder třídy z 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 opakujícího se prvku. |
| GrammarBuilder(String, Int32, Int32) |
Inicializuje novou instanci GrammarBuilder třídy z posloupnosti slov v String a určuje, kolikrát String se může opakovat. |
Poznámky
Instance této třídy lze získat také implicitními převody z jiných tříd nebo kombinováním objektu GrammarBuilder s druhým objektem z nového GrammarBuilder. Další informace najdete v tématu Implicit a Addition metody.
Chcete-li do existujícího GrammarBuilderobjektu Addpřidat omezení, použijte operátor , Append, AppendRuleReferenceAppendDictationa AppendWildcard metody 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ě upravovat 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 a Choices objekty k vytvoření gramatiky, která dokáže rozpoznat jednu 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 podobný one-of prvku ve specifikaci SRGS a obsahuje sadu alternativních frází, z nichž každý lze rozpoznat 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é může výsledná gramatika rozpoznat. Alternativní slova nebo fráze jsou součástí většiny gramatiky a Choices objekt poskytuje tuto funkci pro gramatiky vytvořené pomocí GrammarBuilder.
Příklad nakonec vytvoří Grammar objekt z GrammarBuilder vytvořeného objektu 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
Chcete-li přidat pravidla do existujícího GrammarBuilder objektu, použijte Addoperátor , Append, AppendDictation, AppendRuleReference, a AppendWildcard metody.Addition
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ě upravovat 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 a Choices objekty k vytvoření gramatiky, která dokáže rozpoznat jednu 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 podobný one-of prvku ve specifikaci SRGS a obsahuje sadu alternativních frází, z nichž lze rozpoznat 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é může výsledná gramatika rozpoznat. Alternativní slova nebo fráze jsou součástí většiny gramatiky a Choices objekt poskytuje tuto funkci pro gramatiky vytvořené pomocí GrammarBuilder.
Příklad nakonec vytvoří Grammar objekt z GrammarBuilder vytvořeného objektu 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 vytvoření gramatiky rozpoznávání řeči, která obsahuje alternativy, naleznete v tématu Použití voleb k vytvoření GrammarBuilder GrammarBuilder Grammar.
Viz také
Platí pro
GrammarBuilder(SemanticResultKey)
- Zdroj:
- GrammarBuilder.cs
- Zdroj:
- GrammarBuilder.cs
- Zdroj:
- GrammarBuilder.cs
- Zdroj:
- GrammarBuilder.cs
Inicializuje novou instanci GrammarBuilder třídy z 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
Sémantický klíč.
Příklady
Následující příklad vytvoří gramatiku rozpoznávání řeči, která rozpozná dvě fráze: "Make background colorChoice" a "Set background to colorChoice", kde colorChoice is selected from a set of colors. Gramatika umožňuje uživateli mluvit libovolným z několika názvů barev a vrací sémantické informace o rozpoznaném názvu barvy do aplikace.
Příklad používá jeden SemanticResultKey , se kterým můžete načíst SemanticValue , která je přidružena k barvě mluvené 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 SpeechRecognized události.
Příklad používá String, , ChoicesSemanticResultKey, SemanticResultValuea GrammarBuilder objekty k sestavení omezení, které jsou všechny obsaženy v posledním GrammarBuilder objektu, bothPhrases. A konečně příklad vytvoří Grammar objekt z dokončeného GrammarBuilder.
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é lze vrátit ve výsledku rozpoznávání. K sémantických 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 hodnotu SemanticResultKey, můžete ji 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 a Append(SemanticResultKey)také viz SemanticResultValue a SemanticResultKey.
Důležité
Při vytváření GrammarBuilder objektů obsahujících SemanticResultValue nebo SemanticResultKey instancí se ujistěte, že se vyhněte 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ě upravovat 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 z 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 dvojice název/hodnota.
Příklady
Následující příklad vytvoří gramatiku rozpoznávání řeči, která rozpozná dvě fráze: "Make background colorChoice" a "Set background to colorChoice", kde colorChoice is selected from a set of colors. Gramatika umožňuje uživateli mluvit libovolným z několika názvů barev a vrací sémantické informace o rozpoznaném názvu barvy do aplikace.
Příklad používá jeden SemanticResultKey , se kterým můžete načíst SemanticValue , která je přidružena k barvě mluvené 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 SpeechRecognized události.
Příklad používá String, , ChoicesSemanticResultKey, SemanticResultValuea GrammarBuilder objekty k sestavení omezení, které jsou všechny obsaženy v posledním GrammarBuilder objektu, bothPhrases. A konečně příklad vytvoří Grammar objekt z dokončeného GrammarBuilder.
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é lze vrátit ve výsledku rozpoznávání. K sémantických 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 hodnotu SemanticResultKey, můžete ji 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 a Append(SemanticResultKey)také viz SemanticResultValue a SemanticResultKey.
Důležité
Při vytváření GrammarBuilder objektů obsahujících SemanticResultValue nebo SemanticResultKey instancí se ujistěte, že se vyhněte 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ě upravovat 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 a Choices objekty k vytvoření gramatiky, která dokáže rozpoznat jednu ze dvou frází, "Make background colorChoice" nebo "Set background to colorChoice".
Po vytvoření seznamu přijatelných hodnot pro colorChoice pomocí Choices objektu, příklad inicializuje dva GrammarBuilder objekty makePhrase a setPhrase, pomocí řetězce jako argumentu.
Příklad nakonec vytvoří Grammar objekt z Choices přetypování objektu 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 dokáže rozpoznat gramatika rozpoznávání řeči. Další informace o vytvoření gramatiky rozpoznávání řeči, která obsahuje řetězce, naleznete v tématu Použití řetězců k vytvoření GrammarBuilder GrammarBuilder Grammar.
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
Odpovídající režim gramatiky 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 čtyři šest sedm", pak gramatika Subsequence rozpozná vstup "dva tři čtyři", ale ne vstup "jedna tři pět". Gramatika uspořádané podmnožiny 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 dokáže rozpoznat gramatika rozpoznávání řeči. Parametr subsetMatchingMode určuje podmnožinu fráze, která se dá vyslovit, aby bylo možné úspěšně rozpoznat celou frázi. Můžete ho použít k vytvoření gramatiky se seznamem položek s dlouhými jmény, aniž by uživatelé museli mluvit celým jménem, aby odpovídaly položce.
Další informace o odpovídajících režimech naleznete v tématu SubsetMatchingMode. Další informace o vytvoření gramatiky rozpoznávání řeči, která obsahuje řetězce, naleznete v tématu Použití řetězců k vytvoření GrammarBuilder GrammarBuilder Grammar.
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 opakujícího se 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
Opakovaný prvek.
- minRepeat
- Int32
Minimální počet vstupů odpovídajících prvku definovanému prvkem builder musí nastat, aby představoval shodu.
- maxRepeat
- Int32
Maximální počet, kolikrát může dojít ke vstupu odpovídajícímu prvku definovanému prvkem builder , který představuje shodu.
Příklady
Následující příklad vytvoří gramatiku rozpoznávání řeči pro objednání pizzy. Začíná volitelnou, levou frází, za kterou následuje jedna až čtyři zastavení, a zavře se 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, představuje nový GrammarBuilder volitelný prvek.
Hodnota minRepeat musí být větší nebo rovna 0 a menší nebo rovna hodnotě maxRepeat.
Důležité
Pokud zadáte opakování pro GrammarBuilder objekty, které obsahují SemanticResultValue nebo SemanticResultKey instance, ujistěte se, že se vyhněte 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ě upravovat 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 z posloupnosti slov v String a určuje, kolikrát String se může 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 zadání odpovídající frázi musí nastat, aby se shodovaly.
- maxRepeat
- Int32
Maximální počet, kolikrát může vstup odpovídající frázi nastat, aby se shodovaly.
Příklady
Následující příklad vytvoří gramatiku rozpoznávání řeči pro objednání pizzy. Začíná volitelnou, levou frází, za kterou následuje jedna až čtyři zastavení, a zavře se 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, představuje nový GrammarBuilder volitelný prvek.
Hodnota minRepeat musí být větší nebo rovna 0 a menší nebo rovna hodnotě maxRepeat. Další informace o vytvoření gramatiky rozpoznávání řeči, která obsahuje řetězce, naleznete v tématu Použití řetězců k vytvoření GrammarBuilder GrammarBuilder Grammar.