Partager via


GrammarBuilder Constructeurs

Définition

Initialise une nouvelle instance de la classe GrammarBuilder.

Surcharges

Nom Description
GrammarBuilder()

Initialise une nouvelle instance vide de la GrammarBuilder classe.

GrammarBuilder(Choices)

Initialise une nouvelle instance de la GrammarBuilder classe à partir d’un ensemble d’alternatives.

GrammarBuilder(SemanticResultKey)

Initialise une nouvelle instance de la GrammarBuilder classe à partir d’une clé sémantique.

GrammarBuilder(SemanticResultValue)

Initialise une nouvelle instance de la GrammarBuilder classe à partir d’une valeur sémantique.

GrammarBuilder(String)

Initialise une nouvelle instance de la GrammarBuilder classe à partir d’une séquence de mots.

GrammarBuilder(String, SubsetMatchingMode)

Initialise une nouvelle instance de la GrammarBuilder classe pour un sous-ensemble d’une séquence de mots.

GrammarBuilder(GrammarBuilder, Int32, Int32)

Initialise une nouvelle instance de la GrammarBuilder classe à partir d’un élément répété.

GrammarBuilder(String, Int32, Int32)

Initialise une nouvelle instance de la GrammarBuilder classe à partir de la séquence de mots dans un String et spécifie le nombre de fois que la String classe 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 méthodes et Addition les Implicit méthodes.

Pour ajouter des contraintes à un objet existantGrammarBuilder, utilisez les méthodes, AppendWildcardAppendRuleReferenceAppendAppendDictationles méthodes et les Addméthodes, 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 portant 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 de grammaires de reconnaissance vocale, consultez Reconnaissance vocale.

GrammarBuilder()

Source:
GrammarBuilder.cs
Source:
GrammarBuilder.cs
Source:
GrammarBuilder.cs
Source:
GrammarBuilder.cs

Initialise une nouvelle instance vide de la GrammarBuilder classe.

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

Exemples

L’exemple suivant utilise et Choices des GrammarBuilder objets pour construire une grammaire qui peut reconnaître l’une des deux expressions , « Définir la couleur d’arrière-plan » ou « Définir l’arrière-plan sur 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 de la spécification SRGS et contient un ensemble d’autres expressions, dont l’une peut être reconnue lors de la parole. L’exemple utilise également un Choices objet pour regrouper un tableau de deux GrammarBuilder objets en une paire d’expressions alternatives que la grammaire résultante peut reconnaître. Les mots ou expressions alternatifs 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 objet 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 l’opérateur , les Addméthodes , les , AppendRuleReferenceAppendWildcardAppendAppendDictationet les Addition méthodes.

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 portant 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
Source:
GrammarBuilder.cs

Initialise une nouvelle instance de la GrammarBuilder classe à partir d’un ensemble d’alternatives.

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

Ensemble d’alternatives.

Exemples

L’exemple suivant utilise et Choices des GrammarBuilder objets pour construire une grammaire qui peut reconnaître l’une des deux expressions , « Définir la couleur d’arrière-plan » ou « Définir l’arrière-plan sur 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 de la spécification SRGS et contient un ensemble d’autres expressions, dont l’une peut être reconnue lors de la parole. L’exemple utilise également un Choices objet pour regrouper un tableau de deux GrammarBuilder objets en une paire d’expressions alternatives que la grammaire résultante peut reconnaître. Les mots ou expressions alternatifs 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 objet 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
Source:
GrammarBuilder.cs

Initialise une nouvelle instance de la GrammarBuilder classe à 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

key
SemanticResultKey

Clé sémantique.

Exemples

L’exemple suivant crée une grammaire de reconnaissance vocale qui peut reconnaître les deux expressions , « Définir la couleur d’arrière-plan » et « Définir l’arrière-plan sur colorChoice », où colorChoice est sélectionné à partir d’un ensemble de couleurs. La grammaire permet à un utilisateur de parler de 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 celui 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 String, , SemanticResultKeyChoices, SemanticResultValueet GrammarBuilder les objets pour générer les contraintes qui sont toutes contenues dans le dernier GrammarBuilder objet, bothPhrases. Enfin, l’exemple construit un Grammar objet à partir de l’objet 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 peut être retournée dans le résultat de reconnaissance. Vous pouvez accéder aux informations sémantiques dans le résultat de reconnaissance à l’aide de la Semantics propriété de RecognizedPhrase, qui est disponible dans le gestionnaire de l’événement SpeechRecognized . Si le GrammarBuilder paramètre définit un SemanticResultKey, il peut être utilisé pour récupérer les informations sémantiques dans un résultat de reconnaissance associé à la clé. Voir l’exemple pour Append(SemanticResultKey), et également voir SemanticResultValue et SemanticResultKey.

Important

Lorsque vous construisez GrammarBuilder des objets qui contiennent ou SemanticResultKey des SemanticResultValue instances, 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
Source:
GrammarBuilder.cs

Initialise une nouvelle instance de la GrammarBuilder classe à 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 sémantique ou paire nom/valeur.

Exemples

L’exemple suivant crée une grammaire de reconnaissance vocale qui peut reconnaître les deux expressions , « Définir la couleur d’arrière-plan » et « Définir l’arrière-plan sur colorChoice », où colorChoice est sélectionné à partir d’un ensemble de couleurs. La grammaire permet à un utilisateur de parler de 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 celui 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 String, , SemanticResultKeyChoices, SemanticResultValueet GrammarBuilder les objets pour générer les contraintes qui sont toutes contenues dans le dernier GrammarBuilder objet, bothPhrases. Enfin, l’exemple construit un Grammar objet à partir de l’objet 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 peut être retournée dans le résultat de reconnaissance. Vous pouvez accéder aux informations sémantiques dans le résultat de reconnaissance à l’aide de la Semantics propriété de RecognizedPhrase, qui est disponible dans le gestionnaire de l’événement SpeechRecognized . Si le GrammarBuilder paramètre définit un SemanticResultKey, il peut être utilisé pour récupérer les informations sémantiques dans un résultat de reconnaissance associé à la clé. Voir l’exemple pour Append(SemanticResultKey), et également voir SemanticResultValue et SemanticResultKey.

Important

Lorsque vous construisez GrammarBuilder des objets qui contiennent ou SemanticResultKey des SemanticResultValue instances, 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
Source:
GrammarBuilder.cs

Initialise une nouvelle instance de la GrammarBuilder classe à partir d’une séquence 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 et Choices des GrammarBuilder objets pour construire une grammaire qui peut reconnaître l’une des deux expressions , « Définir la couleur d’arrière-plan » ou « Définir l’arrière-plan sur 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 makePhrasesetPhrase, en utilisant une chaîne comme argument.

L’exemple crée enfin un objet à partir d’un Grammar cast d’objets Choices 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
Source:
GrammarBuilder.cs

Initialise une nouvelle instance de la GrammarBuilder classe pour un sous-ensemble d’une séquence 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 utilisé par la grammaire de reconnaissance vocale pour reconnaître l’expression.

Exemples

L’exemple suivant crée une grammaire de reconnaissance vocale pour chaque SubsetMatchingMode valeur et une grammaire pour choisir entre les grammaires en mode correspondant. Si la valeur est phrase « un deux trois quatre cinq six sept », la grammaire subsequence reconnaît l’entrée « deux trois quatre », mais pas l’entrée « un trois cinq ». Toutefois, la grammaire de 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 obtenir une reconnaissance réussie 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 qu’ils correspondent à un élément.

Pour plus d’informations sur les modes correspondants, 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
Source:
GrammarBuilder.cs

Initialise une nouvelle instance de la GrammarBuilder classe à 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 minimal de fois où l’entrée correspondant à l’élément défini par builder doit se produire pour constituer une correspondance.

maxRepeat
Int32

Nombre maximal de fois où l’entrée correspondant à l’élément défini par builder peut se produire pour constituer une correspondance.

Exemples

L’exemple suivant crée une grammaire de reconnaissance vocale pour commander une pizza. Il commence par une phrase facultative, ouvrante, suivie d’une à quatre garnitures, et se ferme avec 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 est minRepeat 0, la nouvelle 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 les objets qui contiennent SemanticResultValue ou SemanticResultKey des instances, 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
Source:
GrammarBuilder.cs

Initialise une nouvelle instance de la GrammarBuilder classe à partir de la séquence de mots dans un String et spécifie le nombre de fois que la String classe 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 répétée de mots.

minRepeat
Int32

Nombre minimal de fois où l’entrée correspondant à l’expression doit se produire pour constituer une correspondance.

maxRepeat
Int32

Nombre maximal 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 commander une pizza. Il commence par une phrase facultative, ouvrante, suivie d’une à quatre garnitures, et se ferme avec 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 est minRepeat 0, la nouvelle 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.

Voir aussi

S’applique à