GrammarBuilder.Append Méthode
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.
Ajoute un élément de syntaxe à la séquence en cours d'éléments de syntaxe.
Surcharges
Append(String, Int32, Int32) |
Ajoute une expression répétée à la séquence en cours d'éléments de syntaxe. |
Append(GrammarBuilder, Int32, Int32) |
Ajoute un élément de syntaxe répété à la séquence en cours d'éléments de syntaxe. |
Append(String) |
Ajoute une expression à la séquence en cours d'éléments de syntaxe. |
Append(String, SubsetMatchingMode) |
Ajoute un élément pour un sous-ensemble d'une expression à la séquence en cours d'éléments de syntaxe. |
Append(SemanticResultKey) |
Ajoute une clé sémantique à la séquence en cours d'éléments de syntaxe. |
Append(SemanticResultValue) |
Ajoute une valeur sémantique à la séquence en cours d'éléments de syntaxe. |
Append(GrammarBuilder) |
Ajoute un élément de syntaxe à la séquence en cours d'éléments de syntaxe. |
Append(Choices) |
Ajoute un ensemble d'alternatives à la séquence en cours d'éléments de syntaxe. |
Remarques
Utilisez ces méthodes pour ajouter des éléments de grammaire à un .GrammarBuilder Lorsque vous créez des éléments de grammaire, vous pouvez les ajouter au générateur existant pour développer progressivement les contraintes d’une grammaire de reconnaissance vocale. Chaque élément est ajouté à la fin de la séquence actuelle d’éléments.
Cette méthode présente des surcharges pour l’ajout d’objets GrammarBuilder, String, Choices, SemanticResultKeyet SemanticResultValue .
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 de grammaires de reconnaissance vocale, consultez Reconnaissance vocale.
Append(String, Int32, Int32)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute une expression répétée à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::String ^ phrase, int minRepeat, int maxRepeat);
public void Append (string phrase, int minRepeat, int maxRepeat);
member this.Append : string * int * int -> unit
Public Sub Append (phrase As String, minRepeat As Integer, maxRepeat As Integer)
Paramètres
- phrase
- String
Séquence de mots répétée à ajouter.
- minRepeat
- Int32
Nombre minimum de fois où l'entrée correspondant à l'phrase
doit se produire pour constituer une correspondance.
- maxRepeat
- Int32
Nombre maximum de fois où l'entrée correspondant à l'phrase
peut se produire pour constituer une correspondance.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale pour des expressions telles que « Appeler James au travail » et « Appeler Anne sur son téléphone portable », où le mot « téléphone » est facultatif. GrammarBuilder les objets et Choices sont utilisés pour construire la grammaire. L’exemple met en évidence l’utilisation de la Append méthode .
public static Grammar CreatePhonePhrase()
{
// Create alternatives for person names, locations, devices, and pronouns.
Choices personChoice = new Choices(new string[] {"Anne", "James", "Mary", "Sam"});
Choices locationChoice = new Choices(new string[] {"home", "work"});
Choices deviceChoice = new Choices(new string[] {"home", "work", "cell"});
Choices pronounChoice = new Choices(new string[] {"his", "her"});
// Create a phrase for the receiving device, which optionally contains the word "phone".
GrammarBuilder devicePhrase = new GrammarBuilder(pronounChoice);
devicePhrase.Append(deviceChoice);
devicePhrase.Append("phone", 0, 1);
// Create alternatives for phrases specifying a device or a location.
GrammarBuilder atLocation = new GrammarBuilder("at");
atLocation.Append(locationChoice);
GrammarBuilder onDevice = new GrammarBuilder("on");
onDevice.Append(devicePhrase);
Choices howChoice = new Choices(new GrammarBuilder[] {atLocation, onDevice});
// Build the final phrase.
GrammarBuilder callWho = new GrammarBuilder("Call");
callWho.Append(personChoice);
callWho.Append(howChoice);
// Create the Grammar object.
Grammar callGrammar = new Grammar(callWho);
callGrammar.Name = "Call Grammar";
return callGrammar;
}
Remarques
La valeur de minRepeat
doit être supérieure ou égale à 0 et inférieure ou égale à la valeur de maxRepeat
.
Voir aussi
S’applique à
Append(GrammarBuilder, Int32, Int32)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute un élément de syntaxe répété à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::Speech::Recognition::GrammarBuilder ^ builder, int minRepeat, int maxRepeat);
public void Append (System.Speech.Recognition.GrammarBuilder builder, int minRepeat, int maxRepeat);
member this.Append : System.Speech.Recognition.GrammarBuilder * int * int -> unit
Public Sub Append (builder As GrammarBuilder, minRepeat As Integer, maxRepeat As Integer)
Paramètres
- builder
- GrammarBuilder
Élément de syntaxe répété à ajouter.
- 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 des expressions telles que « Appeler James au travail » et « Appeler Anne sur son téléphone portable », où le mot « téléphone » est facultatif. GrammarBuilder les objets et Choices sont utilisés pour construire la grammaire. L’exemple met en évidence l’utilisation de la Append méthode .
public static Grammar CreatePhonePhrase()
{
// Create alternatives for person names, locations, devices, and pronouns.
Choices personChoice = new Choices(new string[] {"Anne", "James", "Mary", "Sam"});
Choices locationChoice = new Choices(new string[] {"home", "work"});
Choices deviceChoice = new Choices(new string[] {"home", "work", "cell"});
Choices pronounChoice = new Choices(new string[] {"his", "her"});
// Create a phrase for the receiving device, which optionally contains the word "phone".
GrammarBuilder devicePhrase = new GrammarBuilder(pronounChoice);
devicePhrase.Append(deviceChoice);
devicePhrase.Append("phone", 0, 1);
// Create alternatives for phrases specifying a device or a location.
GrammarBuilder atLocation = new GrammarBuilder("at");
atLocation.Append(locationChoice);
GrammarBuilder onDevice = new GrammarBuilder("on");
onDevice.Append(devicePhrase);
Choices howChoice = new Choices(new GrammarBuilder[] {atLocation, onDevice});
// Build the final phrase.
GrammarBuilder callWho = new GrammarBuilder("Call");
callWho.Append(personChoice);
callWho.Append(howChoice);
// Create the Grammar object.
Grammar callGrammar = new Grammar(callWho);
callGrammar.Name = "Call Grammar";
return callGrammar;
}
Remarques
La valeur de minRepeat
doit être supérieure ou égale à 0 et inférieure ou égale à la valeur de maxRepeat
.
Important
Lorsque vous ajoutez GrammarBuilder des objets qui contiennent SemanticResultValue ou SemanticResultKey des instances à un GrammarBuilder objet, 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 à
Append(String)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute une expression à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::String ^ phrase);
public void Append (string phrase);
member this.Append : string -> unit
Public Sub Append (phrase As String)
Paramètres
- phrase
- String
Séquence de mots à ajouter.
Remarques
phrase
est ajouté à la fin de la séquence actuelle d’éléments.
Voir aussi
S’applique à
Append(String, SubsetMatchingMode)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute un élément pour un sous-ensemble d'une expression à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::String ^ phrase, System::Speech::Recognition::SubsetMatchingMode subsetMatchingCriteria);
public void Append (string phrase, System.Speech.Recognition.SubsetMatchingMode subsetMatchingCriteria);
member this.Append : string * System.Speech.Recognition.SubsetMatchingMode -> unit
Public Sub Append (phrase As String, subsetMatchingCriteria As SubsetMatchingMode)
Paramètres
- phrase
- String
Séquence de mots à ajouter.
- subsetMatchingCriteria
- SubsetMatchingMode
Mode correspondant utilisé par la grammaire pour identifier l'expression.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale pour chaque SubsetMatchingMode valeur. Par exemple, la grammaire OrderedSubset
générée reconnaît les expressions « trois quatre cinq » et « un trois cinq », et la grammaire Subsequence
reconnaît l’expression « trois quatre cinq », mais pas l’expression « un trois cinq ».
private Grammar[] CreateSubsetMatchTest()
{
List<Grammar> grammars = new List<Grammar>(4);
string phrase = "one two three four five six";
foreach (SubsetMatchingMode mode in
Enum.GetValues(typeof(SubsetMatchingMode)))
{
GrammarBuilder gb = new GrammarBuilder();
gb.Append(phrase, mode);
Grammar grammar = new Grammar(gb);
grammar.Name = mode.ToString();
grammars.Add(grammar);
}
return grammars.ToArray();
}
Remarques
L’élément de sous-ensemble est ajouté à la fin de la séquence actuelle d’éléments. Pour plus d’informations sur la création d’une grammaire de reconnaissance vocale à l’aide de chaînes, consultez Utilisation de chaînes pour créer une grammaire GrammarBuilder.
Pour plus d’informations sur l’utilisation des modes de correspondance de sous-ensembles, consultez System.Speech.Recognition.SubsetMatchingMode.
Voir aussi
S’applique à
Append(SemanticResultKey)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute une clé sémantique à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::Speech::Recognition::SemanticResultKey ^ key);
public void Append (System.Speech.Recognition.SemanticResultKey key);
member this.Append : System.Speech.Recognition.SemanticResultKey -> unit
Public Sub Append (key As SemanticResultKey)
Paramètres
Clé sémantique à ajouter.
Exemples
L’exemple suivant fait partie d’une application console permettant de choisir les villes d’origine et de destination d’un vol. L’application reconnaît des expressions telles que « Je veux voler de Miami à Chicago ». Le gestionnaire de l’événement SpeechRecognized utilise pour SemanticResultKey extraire le code d’aéroport spécifié dans pour SemanticResultValue les villes d’origine et de destination.
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
static void Main(string[] args)
// Initialize an in-process speech recognition engine.
{
using (SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine())
{
// Create a Choices object and add cities and airport codes
// using SemanticResultValue objects.
Choices cities = new Choices();
cities.Add(new SemanticResultValue("Chicago", "ORD"));
cities.Add(new SemanticResultValue("Boston", "BOS"));
cities.Add(new SemanticResultValue("Miami", "MIA"));
cities.Add(new SemanticResultValue("Dallas", "DFW"));
// Build the phrase and add SemanticResultKeys.
GrammarBuilder chooseCities = new GrammarBuilder();
chooseCities.Append("I want to fly from");
chooseCities.Append(new SemanticResultKey("origin", cities));
chooseCities.Append("to");
chooseCities.Append(new SemanticResultKey("destination", cities));
// Build a Grammar object from the GrammarBuilder.
Grammar bookFlight = new Grammar(chooseCities);
bookFlight.Name = "Book Flight";
// Add a handler for the LoadGrammarCompleted event.
recognizer.LoadGrammarCompleted +=
new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);
// Add a handler for the SpeechRecognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Configure the input to the recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Load the grammar object and start recognition.
recognizer.LoadGrammarAsync(bookFlight);
recognizer.RecognizeAsync();
// Keep the console window open.
Console.ReadLine();
}
}
// Handle the LoadGrammarCompleted event.
static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)
{
Console.WriteLine("Grammar loaded: " + e.Grammar.Name);
Console.WriteLine();
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Speech recognized: " + e.Result.Text);
Console.WriteLine();
Console.WriteLine("Semantic results:");
Console.WriteLine(" The flight origin is " + e.Result.Semantics["origin"].Value);
Console.WriteLine(" The flight destination is " + e.Result.Semantics["destination"].Value);
}
}
}
Remarques
key
est ajouté à la fin de la séquence actuelle d’éléments.
Important
Lorsque vous ajoutez ou SemanticResultKey des SemanticResultValue instances à un GrammarBuilder objet, 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 à
Append(SemanticResultValue)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute une valeur sémantique à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::Speech::Recognition::SemanticResultValue ^ value);
public void Append (System.Speech.Recognition.SemanticResultValue value);
member this.Append : System.Speech.Recognition.SemanticResultValue -> unit
Public Sub Append (value As SemanticResultValue)
Paramètres
- value
- SemanticResultValue
Valeur sémantique à ajouter.
Exemples
L’exemple suivant fait partie d’une application console permettant de choisir les villes d’origine et de destination d’un vol. L’application reconnaît des expressions telles que « Je veux voler de Miami à Chicago ». Le gestionnaire de l’événement SpeechRecognized utilise pour SemanticResultKey extraire le code d’aéroport spécifié dans pour SemanticResultValue les villes d’origine et de destination.
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
static void Main(string[] args)
// Initialize an in-process speech recognition engine.
{
using (SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine())
{
// Create GrammarBuilder objects and append SemanticResultValue objects
// that contain cities and airport codes.
GrammarBuilder chicago = new GrammarBuilder();
chicago.Append(new SemanticResultValue("Chicago", "ORD"));
GrammarBuilder boston = new GrammarBuilder();
boston.Append(new SemanticResultValue("Boston", "BOS"));
GrammarBuilder miami = new GrammarBuilder();
miami.Append(new SemanticResultValue("Miami", "MIA"));
GrammarBuilder dallas = new GrammarBuilder();
dallas.Append(new SemanticResultValue("Dallas", "DFW"));
// Create a Choices object and add the cities using implicit conversion from
// SemanticResultValue to GrammarBuilder.
Choices cities = new Choices();
cities.Add(new Choices(new GrammarBuilder[] { chicago, boston, miami, dallas }));
// Build the phrase and add SemanticResultKeys.
GrammarBuilder chooseCities = new GrammarBuilder();
chooseCities.Append("I want to fly from");
chooseCities.Append(new SemanticResultKey("origin", cities));
chooseCities.Append("to");
chooseCities.Append(new SemanticResultKey("destination", cities));
// Build a Grammar object from the GrammarBuilder.
Grammar bookFlight = new Grammar(chooseCities);
bookFlight.Name = "Book Flight";
// Add a handler for the LoadGrammarCompleted event.
recognizer.LoadGrammarCompleted +=
new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);
// Add a handler for the SpeechRecognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Configure the input to the recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Load the grammar object and start recognition.
recognizer.LoadGrammarAsync(bookFlight);
recognizer.RecognizeAsync();
// Keep the console window open.
Console.ReadLine();
}
}
// Handle the LoadGrammarCompleted event.
static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)
{
Console.WriteLine("Grammar loaded: " + e.Grammar.Name);
Console.WriteLine();
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Speech recognized: " + e.Result.Text);
Console.WriteLine();
Console.WriteLine("Semantic results:");
Console.WriteLine(" The flight origin is " + e.Result.Semantics["origin"].Value);
Console.WriteLine(" The flight destination is " + e.Result.Semantics["destination"].Value);
}
}
}
Remarques
value
est ajouté à la fin de la séquence actuelle d’éléments.
Important
Lorsque vous ajoutez ou SemanticResultKey des SemanticResultValue instances à un GrammarBuilder objet, 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 à
Append(GrammarBuilder)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute un élément de syntaxe à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::Speech::Recognition::GrammarBuilder ^ builder);
public void Append (System.Speech.Recognition.GrammarBuilder builder);
member this.Append : System.Speech.Recognition.GrammarBuilder -> unit
Public Sub Append (builder As GrammarBuilder)
Paramètres
- builder
- GrammarBuilder
Élément de grammaire à ajouter.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale pour des expressions telles que « Appeler James au travail » et « Appeler Anne sur son téléphone portable », où le mot « téléphone » est facultatif. GrammarBuilder les objets et Choices sont utilisés pour construire la grammaire. L’exemple met en évidence l’utilisation de la Append méthode .
public static Grammar CreatePhonePhrase()
{
// Create alternatives for person names, locations, devices, and pronouns.
Choices personChoice = new Choices(new string[] {"Anne", "James", "Mary", "Sam"});
Choices locationChoice = new Choices(new string[] {"home", "work"});
Choices deviceChoice = new Choices(new string[] {"home", "work", "cell"});
Choices pronounChoice = new Choices(new string[] {"his", "her"});
// Create a phrase for the receiving device, which optionally contains the word "phone".
GrammarBuilder devicePhrase = new GrammarBuilder(pronounChoice);
devicePhrase.Append(deviceChoice);
devicePhrase.Append("phone", 0, 1);
// Create alternatives for phrases specifying a device or a location.
GrammarBuilder atLocation = new GrammarBuilder("at");
atLocation.Append(locationChoice);
GrammarBuilder onDevice = new GrammarBuilder("on");
onDevice.Append(devicePhrase);
Choices howChoice = new Choices(new GrammarBuilder[] {atLocation, onDevice});
// Build the final phrase.
GrammarBuilder callWho = new GrammarBuilder("Call");
callWho.Append(personChoice);
callWho.Append(howChoice);
// Create the Grammar object.
Grammar callGrammar = new Grammar(callWho);
callGrammar.Name = "Call Grammar";
return callGrammar;
}
Remarques
builder
est ajouté à la fin de la séquence actuelle d’éléments de grammaire.
Notes
Lorsque vous ajoutez GrammarBuilder des objets qui contiennent SemanticResultValue ou SemanticResultKey des instances à un GrammarBuilder objet, 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 à
Append(Choices)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
Ajoute un ensemble d'alternatives à la séquence en cours d'éléments de syntaxe.
public:
void Append(System::Speech::Recognition::Choices ^ alternateChoices);
public void Append (System.Speech.Recognition.Choices alternateChoices);
member this.Append : System.Speech.Recognition.Choices -> unit
Public Sub Append (alternateChoices As Choices)
Paramètres
- alternateChoices
- Choices
Ensemble des alternatives à ajouter.
Exemples
L’exemple suivant crée une grammaire de reconnaissance vocale pour des expressions telles que « Appeler James au travail » et « Appeler Anne sur son téléphone portable », où le mot « téléphone » est facultatif. L’exemple met en évidence l’utilisation de la Append méthode .
public static Grammar CreatePhonePhrase()
{
// Create alternatives for person names, locations, devices, and pronouns.
Choices personChoice = new Choices(new string[] {"Anne", "James", "Mary", "Sam"});
Choices locationChoice = new Choices(new string[] {"home", "work"});
Choices deviceChoice = new Choices(new string[] {"home", "work", "cell"});
Choices pronounChoice = new Choices(new string[] {"his", "her"});
// Create a phrase for the receiving device, which optionally contains the word "phone".
GrammarBuilder devicePhrase = new GrammarBuilder(pronounChoice);
devicePhrase.Append(deviceChoice);
devicePhrase.Append("phone", 0, 1);
// Create alternatives for phrases specifying a device or a location.
GrammarBuilder atLocation = new GrammarBuilder("at");
atLocation.Append(locationChoice);
GrammarBuilder onDevice = new GrammarBuilder("on");
onDevice.Append(devicePhrase);
Choices howChoice = new Choices(new GrammarBuilder[] {atLocation, onDevice});
// Build the final phrase.
GrammarBuilder callWho = new GrammarBuilder("Call");
callWho.Append(personChoice);
callWho.Append(howChoice);
// Create the Grammar object.
Grammar callGrammar = new Grammar(callWho);
callGrammar.Name = "Call Grammar";
return callGrammar;
}
Remarques
alternateChoices
est ajouté à la fin de la séquence actuelle d’éléments.
Important
Lorsque vous ajoutez Choices des objets qui contiennent SemanticResultValue ou SemanticResultKey des instances à un GrammarBuilder objet, 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.