GrammarBuilder Constructeurs
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Initialise une nouvelle instance de la classe GrammarBuilder.
Surcharges
GrammarBuilder() |
Initialise une nouvelle instance vide de la classe GrammarBuilder. |
GrammarBuilder(Choices) |
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'un ensemble de solutions de remplacement. |
GrammarBuilder(SemanticResultKey) |
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'une clé sémantique. |
GrammarBuilder(SemanticResultValue) |
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'une valeur sémantique. |
GrammarBuilder(String) |
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'une suite de mots. |
GrammarBuilder(String, SubsetMatchingMode) |
Initialise une nouvelle instance de la classe GrammarBuilder pour un sous-ensemble d'une suite de mots. |
GrammarBuilder(GrammarBuilder, Int32, Int32) |
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'un élément répété. |
GrammarBuilder(String, Int32, Int32) |
Initialise une nouvelle instance de la classe GrammarBuilder à partir de la séquence de mots d'une String et spécifie le nombre de fois que la String peut être répétée. |
Remarques
Les instances de cette classe peuvent également être obtenues par des conversions implicites à partir d’autres classes ou en combinant un GrammarBuilder objet avec un deuxième objet à partir d’un nouveau GrammarBuilder. Pour plus d’informations, consultez les Implicit méthodes et Addition .
Pour ajouter des contraintes à un existant GrammarBuilder, utilisez les Addméthodes , AppendAppendDictation, AppendRuleReference, et AppendWildcard et et l’opérateur Addition .
Important
Le module de reconnaissance vocale peut lever une exception lors de l’utilisation d’une grammaire de reconnaissance vocale qui contient des éléments sémantiques en double avec le même nom de clé ou plusieurs éléments sémantiques susceptibles de modifier à plusieurs reprises la valeur du même élément sémantique.
Pour plus d’informations sur la création et l’utilisation des grammaires de reconnaissance vocale, consultez Reconnaissance vocale.
GrammarBuilder()
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance vide de la classe GrammarBuilder.
public:
GrammarBuilder();
public GrammarBuilder ();
Public Sub New ()
Exemples
L’exemple suivant utilise des GrammarBuilder objets et Choices pour construire une grammaire qui peut reconnaître l’une des deux expressions , « Make background colorChoice » ou « Set background to colorChoice ».
L’exemple utilise un Choices objet pour créer une liste de valeurs acceptables pour colorChoice à partir d’un tableau d’objets String . Un Choices objet est analogue à l’élément one-of
dans la spécification SRGS et contient un ensemble d’expressions alternatives, dont l’une peut être reconnue lorsqu’elle est parlée. L’exemple utilise également un Choices objet pour regrouper un tableau de deux GrammarBuilder objets dans une paire d’expressions alternatives que la grammaire résultante peut reconnaître. Les mots ou expressions de substitution sont un composant de la plupart des grammaires, et l’objet Choices fournit cette fonctionnalité pour les grammaires construites avec GrammarBuilder.
L’exemple crée enfin un Grammar objet à partir d’un GrammarBuilder construit à partir d’un Choices objet .
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;
}
Remarques
Pour ajouter des règles à un objet existantGrammarBuilder, utilisez les Addméthodes , AppendAppendDictation, AppendRuleReference, et AppendWildcard et et l’opérateur Addition .
Important
Le module de reconnaissance vocale peut lever une exception lors de l’utilisation d’une grammaire de reconnaissance vocale qui contient des éléments sémantiques en double avec le même nom de clé ou plusieurs éléments sémantiques susceptibles de modifier à plusieurs reprises la valeur du même élément sémantique.
Voir aussi
S’applique à
GrammarBuilder(Choices)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'un ensemble de solutions de remplacement.
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)
Paramètres
- alternateChoices
- Choices
Jeu d'alternatives.
Exemples
L’exemple suivant utilise des GrammarBuilder objets et Choices pour construire une grammaire qui peut reconnaître l’une des deux expressions , « Make background colorChoice » ou « Set background to colorChoice ».
L’exemple utilise un Choices objet pour créer une liste de valeurs acceptables pour colorChoice à partir d’un tableau d’objets String . Un Choices objet est analogue à l’élément one-of
dans la spécification SRGS et contient un ensemble d’expressions alternatives, qui peuvent être reconnues lorsqu’elles sont parlées. L’exemple utilise également un Choices objet pour regrouper un tableau de deux GrammarBuilder objets dans une paire d’expressions alternatives que la grammaire résultante peut reconnaître. Les mots ou expressions de substitution sont un composant de la plupart des grammaires, et l’objet Choices fournit cette fonctionnalité pour les grammaires construites avec GrammarBuilder.
L’exemple crée enfin un Grammar objet à partir d’un GrammarBuilder construit à partir d’un Choices objet .
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;
}
Remarques
Pour plus d’informations sur la création d’une grammaire de reconnaissance vocale qui contient des alternatives, consultez Using Choices to Create a GrammarBuilder Grammar.
Voir aussi
S’applique à
GrammarBuilder(SemanticResultKey)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'une clé sémantique.
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)
Paramètres
Clé sémantique.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale qui peut reconnaître les deux expressions , « Make background colorChoice » et « Set background to colorChoice », où colorChoice est sélectionné à partir d’un ensemble de couleurs. La grammaire permet à un utilisateur de parler plusieurs noms de couleurs et retourne des informations sémantiques sur le nom de couleur reconnu à l’application.
L’exemple utilise un seul SemanticResultKey avec lequel vous pouvez récupérer le SemanticValue associé à la couleur parlée par l’utilisateur. Par exemple, si l’entrée contient l’expression « Définir l’arrière-plan sur rouge », le résultat de la reconnaissance contient la valeur sémantique « #FF0000 », que vous pouvez récupérer à l’aide d’un gestionnaire pour l’événement SpeechRecognized
.
L’exemple utilise Stringdes objets , ChoicesSemanticResultKey, SemanticResultValue, et GrammarBuilder pour générer les contraintes contenues dans le dernier GrammarBuilder objet, bothPhrases
. Enfin, l’exemple construit un Grammar objet à partir du terminé 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;
}
Remarques
Lorsque vous créez une GrammarBuilder instance à partir d’un SemanticResultValue objet, vous ajoutez des informations sémantiques à la grammaire qui peuvent être retournées dans le résultat de la reconnaissance. Vous pouvez accéder aux informations sémantiques dans le résultat de la reconnaissance à l’aide de la Semantics propriété de RecognizedPhrase, qui est disponible dans le gestionnaire de l’événement SpeechRecognized
. Si définit GrammarBuilder un SemanticResultKey, il peut être utilisé pour récupérer les informations sémantiques dans un résultat de reconnaissance associé à la clé. Consultez l’exemple pour Append(SemanticResultKey), et consultez SemanticResultValue également et SemanticResultKey.
Important
Lorsque vous construisez GrammarBuilder des objets qui contiennent des SemanticResultValue instances ou SemanticResultKey , veillez à éviter de créer des éléments sémantiques en double avec le même nom de clé ou plusieurs éléments sémantiques susceptibles de modifier à plusieurs reprises la Value propriété d’un SemanticValue objet. Le module de reconnaissance vocale peut lever une exception s’il rencontre ces circonstances.
Voir aussi
S’applique à
GrammarBuilder(SemanticResultValue)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'une valeur sémantique.
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)
Paramètres
- value
- SemanticResultValue
Valeur ou paire nom/valeur sémantique.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale qui peut reconnaître les deux expressions , « Make background colorChoice » et « Set background to colorChoice », où colorChoice est sélectionné à partir d’un ensemble de couleurs. La grammaire permet à un utilisateur de parler plusieurs noms de couleurs et retourne des informations sémantiques sur le nom de couleur reconnu à l’application.
L’exemple utilise un seul SemanticResultKey avec lequel vous pouvez récupérer le SemanticValue associé à la couleur parlée par l’utilisateur. Par exemple, si l’entrée contient l’expression « Définir l’arrière-plan sur rouge », le résultat de la reconnaissance contient la valeur sémantique « #FF0000 », que vous pouvez récupérer à l’aide d’un gestionnaire pour l’événement SpeechRecognized
.
L’exemple utilise Stringdes objets , ChoicesSemanticResultKey, SemanticResultValue, et GrammarBuilder pour générer les contraintes contenues dans le dernier GrammarBuilder objet, bothPhrases
. Enfin, l’exemple construit un Grammar objet à partir du terminé 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;
}
Remarques
Lorsque vous créez une GrammarBuilder instance à partir d’un SemanticResultValue objet, vous ajoutez des informations sémantiques à la grammaire qui peuvent être retournées dans le résultat de la reconnaissance. Vous pouvez accéder aux informations sémantiques dans le résultat de la reconnaissance à l’aide de la Semantics propriété de RecognizedPhrase, qui est disponible dans le gestionnaire de l’événement SpeechRecognized
. Si définit GrammarBuilder un SemanticResultKey, il peut être utilisé pour récupérer les informations sémantiques dans un résultat de reconnaissance associé à la clé. Consultez l’exemple pour Append(SemanticResultKey), et consultez SemanticResultValue également et SemanticResultKey.
Important
Lorsque vous construisez GrammarBuilder des objets qui contiennent des SemanticResultValue instances ou SemanticResultKey , veillez à éviter de créer des éléments sémantiques en double avec le même nom de clé ou plusieurs éléments sémantiques susceptibles de modifier à plusieurs reprises la Value propriété d’un SemanticValue objet. Le module de reconnaissance vocale peut lever une exception s’il rencontre ces circonstances.
Voir aussi
S’applique à
GrammarBuilder(String)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'une suite de mots.
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)
Paramètres
- phrase
- String
Séquence de mots.
Exemples
L’exemple suivant utilise des GrammarBuilder objets et Choices pour construire une grammaire qui peut reconnaître l’une des deux expressions , « Make background colorChoice » ou « Set background to colorChoice ».
Après avoir créé une liste de valeurs acceptables pour colorChoice à l’aide d’un Choices objet, l’exemple initialise deux GrammarBuilder objets et makePhrase
setPhrase
, en utilisant une chaîne comme argument.
L’exemple crée enfin un Grammar objet à partir d’un Choices cast d’objet en objet GrammarBuilder .
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;
}
Remarques
L’expression représente une expression parlée exacte que la grammaire de reconnaissance vocale peut reconnaître. Pour plus d’informations sur la création d’une grammaire de reconnaissance vocale qui contient des chaînes, consultez Utilisation de chaînes pour créer une grammaire GrammarBuilder.
Voir aussi
S’applique à
GrammarBuilder(String, SubsetMatchingMode)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance de la classe GrammarBuilder pour un sous-ensemble d'une suite de mots.
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)
Paramètres
- phrase
- String
Séquence de mots.
- subsetMatchingCriteria
- SubsetMatchingMode
Mode correspondant que la syntaxe de reconnaissance vocale utilise pour identifier l'expression.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale pour chaque SubsetMatchingMode valeur et une grammaire pour le choix entre les grammaires du mode correspondant. Si la valeur de phrase
est « un deux trois quatre cinq six sept », la grammaire de sous-séquence reconnaît l’entrée « deux trois quatre », mais pas l’entrée « un trois cinq ». Toutefois, la grammaire du sous-ensemble ordonné reconnaît ces deux entrées.
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();
}
Remarques
Le phrase
paramètre représente l’expression que la grammaire de reconnaissance vocale peut reconnaître. Le subsetMatchingMode
paramètre spécifie un sous-ensemble de l’expression qui peut être prononcé pour réussir la reconnaissance de l’ensemble de l’expression. Vous pouvez l’utiliser pour créer une grammaire avec une liste d’entrées qui ont des noms longs, sans exiger que les utilisateurs parlent un nom entier pour correspondre à un élément.
Pour plus d’informations sur les modes de correspondance, consultez SubsetMatchingMode. Pour plus d’informations sur la création d’une grammaire de reconnaissance vocale qui contient des chaînes, consultez Utilisation de chaînes pour créer une grammaire GrammarBuilder.
Voir aussi
S’applique à
GrammarBuilder(GrammarBuilder, Int32, Int32)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance de la classe GrammarBuilder à partir d'un élément répété.
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)
Paramètres
- builder
- GrammarBuilder
Élément répété.
- minRepeat
- Int32
Nombre minimum de fois où l'entrée correspondant à l'élément défini par le builder
doit se produire pour constituer une correspondance.
- maxRepeat
- Int32
Nombre maximum de fois où l'entrée correspondant à l'élément défini par le builder
peut se produire pour constituer une correspondance.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale pour la commande d’une pizza. Elle commence par une phrase d’ouverture facultative, suivie d’une à quatre garnitures et se termine par le mot « 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;
}
Remarques
Si la valeur de minRepeat
est 0, le nouveau GrammarBuilder représente un élément facultatif.
La valeur de minRepeat
doit être supérieure ou égale à 0 et inférieure ou égale à la valeur de maxRepeat
.
Important
Lorsque vous spécifiez des répétitions pour GrammarBuilder des objets qui contiennent SemanticResultValue des instances ou SemanticResultKey , veillez à éviter de créer des éléments sémantiques en double avec le même nom de clé ou plusieurs éléments sémantiques susceptibles de modifier à plusieurs reprises la Value propriété d’un SemanticValue objet. Le module de reconnaissance vocale peut lever une exception s’il rencontre ces circonstances.
Voir aussi
S’applique à
GrammarBuilder(String, Int32, Int32)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Initialise une nouvelle instance de la classe GrammarBuilder à partir de la séquence de mots d'une String et spécifie le nombre de fois que la String peut être répétée.
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)
Paramètres
- phrase
- String
Séquence de mots répétée.
- minRepeat
- Int32
Nombre minimum de fois où l'entrée correspondant à l'expression doit se produire pour constituer une correspondance.
- maxRepeat
- Int32
Nombre maximum de fois où l'entrée correspondant à l'expression peut se produire pour constituer une correspondance.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale pour la commande d’une pizza. Elle commence par une phrase d’ouverture facultative, suivie d’une à quatre garnitures et se termine par le mot « 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;
}
Remarques
Si la valeur de minRepeat
est 0, le nouveau GrammarBuilder représente un élément facultatif.
La valeur de minRepeat
doit être supérieure ou égale à 0 et inférieure ou égale à la valeur de maxRepeat
. Pour plus d’informations sur la création d’une grammaire de reconnaissance vocale qui contient des chaînes, consultez Utilisation de chaînes pour créer une grammaire GrammarBuilder.