GrammarBuilder Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der GrammarBuilder-Klasse.
Überlädt
GrammarBuilder() |
Initialisiert eine neue leere Instanz der GrammarBuilder-Klasse. |
GrammarBuilder(Choices) |
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einer Gruppe von Alternativen. |
GrammarBuilder(SemanticResultKey) |
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einem semantischen Schlüssel. |
GrammarBuilder(SemanticResultValue) |
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einem semantischen Wert. |
GrammarBuilder(String) |
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einer Sequenz von Wörtern. |
GrammarBuilder(String, SubsetMatchingMode) |
Initialisiert eine neue Instanz der GrammarBuilder-Klasse für eine Teilmenge einer Sequenz von Wörtern. |
GrammarBuilder(GrammarBuilder, Int32, Int32) |
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einem wiederholten Element. |
GrammarBuilder(String, Int32, Int32) |
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus der Sequenz von Wörtern in einem String und gibt an, wie oft der String wiederholt werden kann. |
Hinweise
Instanzen dieser Klasse können auch durch implizite Konvertierungen aus anderen Klassen oder durch Kombinieren eines GrammarBuilder -Objekts mit einem zweiten -Objekt aus einem neuen GrammarBuilderabgerufen werden. Weitere Informationen finden Sie unter den Implicit Methoden und Addition .
Um einer vorhandenen GrammarBuilderMethode Einschränkungen hinzuzufügen, verwenden Sie die AddMethoden , Append, AppendDictation, AppendRuleReferenceund AppendWildcard sowie den Addition Operator.
Wichtig
Die Spracherkennung kann eine Ausnahme auslösen, wenn eine Spracherkennungsgrammatik verwendet wird, die doppelte semantische Elemente mit demselben Schlüsselnamen oder mehrere semantische Elemente enthält, die den Wert desselben semantischen Elements wiederholt ändern können.
Weitere Informationen zum Erstellen und Verwenden von Spracherkennungsgrammatiken finden Sie unter Spracherkennung.
GrammarBuilder()
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue leere Instanz der GrammarBuilder-Klasse.
public:
GrammarBuilder();
public GrammarBuilder ();
Public Sub New ()
Beispiele
Im folgenden Beispiel werden und -Objekte verwendet GrammarBuilder , Choices um eine Grammatik zu erstellen, die einen der beiden Ausdrücke erkennen kann: "Make background colorChoice" oder "Set background to colorChoice".
Im Beispiel wird ein Choices -Objekt verwendet, um eine Liste zulässiger Werte für colorChoice aus einem Array von String Objekten zu erstellen. Ein Choices -Objekt entspricht dem one-of
-Element in der SRGS-Spezifikation und enthält eine Reihe alternativer Ausdrücke, von denen jeder erkannt werden kann, wenn gesprochen wird. Im Beispiel wird auch ein Choices -Objekt verwendet, um ein Array von zwei GrammarBuilder Objekten in einem Paar alternativer Ausdrücke zu gruppieren, die von der resultierenden Grammatik erkannt werden können. Alternative Wörter oder Ausdrücke sind eine Komponente der meisten Grammatiken, und das -Objekt stellt diese Funktionalität für Grammatiken bereit, die Choices mit GrammarBuildererstellt wurden.
Das Beispiel erstellt schließlich ein Grammar Objekt aus einem GrammarBuilder , das aus einem Choices -Objekt erstellt wurde.
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;
}
Hinweise
Um einem vorhandenen GrammarBuilder Objekt Regeln hinzuzufügen, verwenden Sie die AddMethoden , Append, AppendDictation, AppendRuleReferenceund AppendWildcard sowie den Addition Operator.
Wichtig
Die Spracherkennung kann eine Ausnahme auslösen, wenn eine Spracherkennungsgrammatik verwendet wird, die doppelte semantische Elemente mit demselben Schlüsselnamen oder mehrere semantische Elemente enthält, die den Wert desselben semantischen Elements wiederholt ändern können.
Weitere Informationen
Gilt für:
GrammarBuilder(Choices)
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einer Gruppe von Alternativen.
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)
Parameter
- alternateChoices
- Choices
Der Satz von Alternativen.
Beispiele
Im folgenden Beispiel werden und -Objekte verwendet GrammarBuilder , Choices um eine Grammatik zu erstellen, die einen der beiden Ausdrücke erkennen kann: "Make background colorChoice" oder "Set background to colorChoice".
Im Beispiel wird ein Choices -Objekt verwendet, um eine Liste zulässiger Werte für colorChoice aus einem Array von String Objekten zu erstellen. Ein Choices -Objekt ist analog zum one-of
-Element in der SRGS-Spezifikation und enthält eine Reihe alternativer Ausdrücke, von denen jeder erkannt werden kann, wenn gesprochen wird. Im Beispiel wird auch ein Choices -Objekt verwendet, um ein Array von zwei GrammarBuilder Objekten in einem Paar alternativer Ausdrücke zu gruppieren, die von der resultierenden Grammatik erkannt werden können. Alternative Wörter oder Ausdrücke sind eine Komponente der meisten Grammatiken, und das -Objekt stellt diese Funktionalität für Grammatiken bereit, die Choices mit GrammarBuildererstellt wurden.
Das Beispiel erstellt schließlich ein Grammar Objekt aus einem GrammarBuilder , das aus einem Choices -Objekt erstellt wurde.
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;
}
Hinweise
Weitere Informationen zum Erstellen einer Spracherkennungsgrammatik, die Alternativen enthält, finden Sie unter Verwenden von Optionen zum Erstellen einer GrammarBuilder-Grammatik.
Weitere Informationen
Gilt für:
GrammarBuilder(SemanticResultKey)
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einem semantischen Schlüssel.
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)
Parameter
Der semantische Schlüssel.
Beispiele
Im folgenden Beispiel wird eine Spracherkennungsgrammatik erstellt, die die beiden Ausdrücke "Make background colorChoice" und "Set background to colorChoice" erkennen kann, wobei colorChoice aus einer Reihe von Farben ausgewählt ist. Die Grammatik ermöglicht es einem Benutzer, einen von mehreren Farbnamen zu sprechen, und gibt semantische Informationen über den erkannten Farbnamen an die Anwendung zurück.
Im Beispiel wird eine Einzelne SemanticResultKey verwendet, mit der Sie die abrufen können, die SemanticValue der vom Benutzer gesprochenen Farbe zugeordnet ist. Wenn die Eingabe beispielsweise den Ausdruck "Hintergrund auf rot festlegen" enthält, enthält das Erkennungsergebnis den semantischen Wert von "#FF0000", den Sie mithilfe eines Handlers für das SpeechRecognized
Ereignis abrufen können.
Im Beispiel werden Stringdie - , Choices- SemanticResultKey, - SemanticResultValueund GrammarBuilder -Objekte verwendet, um die Einschränkungen zu erstellen, die alle im letzten GrammarBuilder Objekt enthalten sind. bothPhrases
Schließlich erstellt das Beispiel ein Grammar -Objekt aus dem abgeschlossenen 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;
}
Hinweise
Wenn Sie eine GrammarBuilder Instanz aus einem SemanticResultValue Objekt erstellen, fügen Sie der Grammatik semantische Informationen hinzu, die im Erkennungsergebnis zurückgegeben werden können. Sie können auf die semantischen Informationen im Erkennungsergebnis mithilfe der Semantics -Eigenschaft von RecognizedPhrasezugreifen, die im Handler für das SpeechRecognized
Ereignis verfügbar ist. Wenn ein GrammarBuilder definiert wird, kann dies verwendet werden, um die semantischen Informationen in einem Erkennungsergebnis SemanticResultKeyabzurufen, das dem Schlüssel zugeordnet ist. Sehen Sie sich das Beispiel für Append(SemanticResultKey)und an SemanticResultValueSemanticResultKey.
Wichtig
Wenn Sie Objekte erstellen GrammarBuilder , die Oder Instanzen enthalten SemanticResultValueSemanticResultKey , vermeiden Sie das Erstellen doppelter semantischer Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen, die die Value Eigenschaft eines SemanticValue Objekts wiederholt ändern könnten. Die Spracherkennung kann eine Ausnahme auslösen, wenn diese Umstände auftreten.
Weitere Informationen
Gilt für:
GrammarBuilder(SemanticResultValue)
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einem semantischen Wert.
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)
Parameter
- value
- SemanticResultValue
Der semantische Wert oder das Name/Wert-Paar.
Beispiele
Im folgenden Beispiel wird eine Spracherkennungsgrammatik erstellt, die die beiden Ausdrücke "Make background colorChoice" und "Set background to colorChoice" erkennen kann, wobei colorChoice aus einer Reihe von Farben ausgewählt ist. Die Grammatik ermöglicht es einem Benutzer, einen von mehreren Farbnamen zu sprechen, und gibt semantische Informationen über den erkannten Farbnamen an die Anwendung zurück.
Im Beispiel wird eine Einzelne SemanticResultKey verwendet, mit der Sie die abrufen können, die SemanticValue der vom Benutzer gesprochenen Farbe zugeordnet ist. Wenn die Eingabe beispielsweise den Ausdruck "Hintergrund auf rot festlegen" enthält, enthält das Erkennungsergebnis den semantischen Wert von "#FF0000", den Sie mithilfe eines Handlers für das SpeechRecognized
Ereignis abrufen können.
Im Beispiel werden Stringdie - , Choices- SemanticResultKey, - SemanticResultValueund GrammarBuilder -Objekte verwendet, um die Einschränkungen zu erstellen, die alle im letzten GrammarBuilder Objekt enthalten sind. bothPhrases
Schließlich erstellt das Beispiel ein Grammar -Objekt aus dem abgeschlossenen 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;
}
Hinweise
Wenn Sie eine GrammarBuilder Instanz aus einem SemanticResultValue Objekt erstellen, fügen Sie der Grammatik semantische Informationen hinzu, die im Erkennungsergebnis zurückgegeben werden können. Sie können auf die semantischen Informationen im Erkennungsergebnis mithilfe der Semantics -Eigenschaft von RecognizedPhrasezugreifen, die im Handler für das SpeechRecognized
Ereignis verfügbar ist. Wenn ein GrammarBuilder definiert wird, kann dies verwendet werden, um die semantischen Informationen in einem Erkennungsergebnis SemanticResultKeyabzurufen, das dem Schlüssel zugeordnet ist. Sehen Sie sich das Beispiel für Append(SemanticResultKey)und an SemanticResultValueSemanticResultKey.
Wichtig
Wenn Sie Objekte erstellen GrammarBuilder , die Oder Instanzen enthalten SemanticResultValueSemanticResultKey , vermeiden Sie das Erstellen doppelter semantischer Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen, die die Value Eigenschaft eines SemanticValue Objekts wiederholt ändern könnten. Die Spracherkennung kann eine Ausnahme auslösen, wenn diese Umstände auftreten.
Weitere Informationen
Gilt für:
GrammarBuilder(String)
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einer Sequenz von Wörtern.
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)
Parameter
- phrase
- String
Die Wortsequenz.
Beispiele
Im folgenden Beispiel werden und -Objekte verwendet GrammarBuilder , Choices um eine Grammatik zu erstellen, die einen der beiden Ausdrücke erkennen kann: "Make background colorChoice" oder "Set background to colorChoice".
Nachdem Sie eine Liste akzeptabler Werte für colorChoice mithilfe eines Choices -Objekts erstellt haben, initialisiert das Beispiel zwei GrammarBuilder Objekte makePhrase
und setPhrase
verwendet eine Zeichenfolge als Argument.
Im Beispiel wird schließlich ein Grammar Objekt aus einem Choices Objekt erstellt, das in ein GrammarBuilder Objekt umgewandelt wird.
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;
}
Hinweise
Der Ausdruck stellt einen genauen gesprochenen Ausdruck dar, den die Spracherkennungsgrammatik erkennen kann. Weitere Informationen zum Erstellen einer Spracherkennungsgrammatik, die Zeichenfolgen enthält, finden Sie unter Verwenden von Zeichenfolgen zum Erstellen einer GrammarBuilder-Grammatik.
Weitere Informationen
Gilt für:
GrammarBuilder(String, SubsetMatchingMode)
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder-Klasse für eine Teilmenge einer Sequenz von Wörtern.
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)
Parameter
- phrase
- String
Die Wortsequenz.
- subsetMatchingCriteria
- SubsetMatchingMode
Der entsprechende Modus, den die Spracherkennungsgrammatik verwendet, um den Ausdruck zu erkennen.
Beispiele
Im folgenden Beispiel wird eine Spracherkennungsgrammatik für jeden SubsetMatchingMode Wert und eine Grammatik für die Auswahl zwischen den Grammatiken des übereinstimmenden Modus erstellt. Wenn der Wert von phrase
"one two three four five six seven" ist, erkennt die Subsequence-Grammatik die Eingabe "zwei drei vier", nicht aber die Eingabe "one three five". Die Grammatik der sortierten Teilmenge erkennt jedoch beide Eingaben.
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();
}
Hinweise
Der phrase
Parameter stellt den Ausdruck dar, den die Spracherkennungsgrammatik erkennen kann. Der subsetMatchingMode
Parameter gibt eine Teilmenge des Ausdrucks an, der gesprochen werden kann, um eine erfolgreiche Erkennung des gesamten Ausdrucks zu erreichen. Sie können dies verwenden, um eine Grammatik mit einer Liste von Einträgen mit langen Namen zu erstellen, ohne dass Benutzer einen ganzen Namen sprechen müssen, um einem Element zu entsprechen.
Weitere Informationen zu den übereinstimmenden Modi finden Sie unter SubsetMatchingMode. Weitere Informationen zum Erstellen einer Spracherkennungsgrammatik, die Zeichenfolgen enthält, finden Sie unter Verwenden von Zeichenfolgen zum Erstellen einer GrammarBuilder-Grammatik.
Weitere Informationen
Gilt für:
GrammarBuilder(GrammarBuilder, Int32, Int32)
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus einem wiederholten Element.
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)
Parameter
- builder
- GrammarBuilder
Das wiederholte Element.
- minRepeat
- Int32
Die minimale Wiederholungsrate für eine Übereinstimmung der Eingabe mit dem durch builder
definierten Element, nach der eine Übereinstimmung anerkannt wird.
- maxRepeat
- Int32
Die maximale Wiederholungsrate für eine Übereinstimmung der Eingabe mit dem durch builder
definierten Element, nach der eine Übereinstimmung anerkannt wird.
Beispiele
Im folgenden Beispiel wird eine Spracherkennungsgrammatik für die Bestellung einer Pizza erstellt. Es beginnt mit einem optionalen, öffnenden Ausdruck, gefolgt von einem bis vier Belägen und schließt mit dem Wort "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;
}
Hinweise
Wenn der Wert von minRepeat
0 ist, stellt das neue GrammarBuilder ein optionales Element dar.
Der Wert von minRepeat
muss größer oder gleich 0 und kleiner als oder gleich dem Wert von maxRepeat
sein.
Wichtig
Wenn Sie Wiederholungen für GrammarBuilder Objekte angeben, die oder SemanticResultKey Instanzen enthaltenSemanticResultValue, vermeiden Sie das Erstellen doppelter semantischer Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen, die die Value Eigenschaft eines SemanticValue Objekts wiederholt ändern könnten. Die Spracherkennung kann eine Ausnahme auslösen, wenn diese Umstände auftreten.
Weitere Informationen
Gilt für:
GrammarBuilder(String, Int32, Int32)
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder-Klasse aus der Sequenz von Wörtern in einem String und gibt an, wie oft der String wiederholt werden kann.
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)
Parameter
- phrase
- String
Die wiederholte Wortsequenz.
- minRepeat
- Int32
Die minimale Wiederholungsrate für eine Übereinstimmung der Eingabe mit der Phrase, nach der eine Übereinstimmung anerkannt wird.
- maxRepeat
- Int32
Die maximale Wiederholungsrate für eine Übereinstimmung der Eingabe mit der Phrase, nach der eine Übereinstimmung anerkannt wird.
Beispiele
Im folgenden Beispiel wird eine Spracherkennungsgrammatik für die Bestellung einer Pizza erstellt. Es beginnt mit einem optionalen, öffnenden Ausdruck, gefolgt von einem bis vier Belägen und schließt mit dem Wort "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;
}
Hinweise
Wenn der Wert von minRepeat
0 ist, stellt das neue GrammarBuilder ein optionales Element dar.
Der Wert von minRepeat
muss größer oder gleich 0 und kleiner oder gleich dem Wert von maxRepeat
sein. Weitere Informationen zum Erstellen einer Spracherkennungsgrammatik, die Zeichenfolgen enthält, finden Sie unter Verwenden von Zeichenfolgen zum Erstellen einer GrammarBuilder-Grammatik.
Weitere Informationen
Gilt für:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für