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
| Name | Beschreibung |
|---|---|
| GrammarBuilder() |
Initialisiert eine neue, leere Instanz der GrammarBuilder Klasse. |
| GrammarBuilder(Choices) |
Initialisiert eine neue Instanz der GrammarBuilder Klasse aus einer Reihe 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 Abfolge von Wörtern. |
| GrammarBuilder(String, SubsetMatchingMode) |
Initialisiert eine neue Instanz der GrammarBuilder Klasse für eine Teilmenge einer Abfolge 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 Abfolge von Wörtern in einem String und gibt an, wie oft die String Wiederholte 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 und Addition den Implicit Methoden.
Verwenden Sie zum Hinzufügen von Einschränkungen zu einem vorhandenen GrammarBuilder, verwenden Sie die Add, Append, , AppendDictation, AppendRuleReferenceund Methoden und AppendWildcard den Addition Operator.
Von Bedeutung
Die Spracherkennung kann eine Ausnahme auslösen, wenn eine Spracherkennungsgrammatik verwendet wird, die doppelte semantische Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen 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
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue, leere Instanz der GrammarBuilder Klasse.
public:
GrammarBuilder();
public GrammarBuilder();
Public Sub New ()
Beispiele
Im folgenden Beispiel wird GrammarBuilderChoices eine Grammatik erstellt, die einen der beiden Ausdrücke "Make background colorChoice" oder "Set background to colorChoice" erkennt.
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 eines 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 Choices Objekt stellt diese Funktionalität für Grammatiken bereit, die mit GrammarBuilder.
Das Beispiel erstellt schließlich ein Grammar Objekt aus einem GrammarBuilder konstruierten Objekt aus einem Choices Objekt.
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
GrammarBuilder colorElement = new GrammarBuilder(colorChoice);
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase = new GrammarBuilder("Make background");
makePhrase.Append(colorElement);
GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
setPhrase.Append(colorElement);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the Grammar object from the result.
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
Verwenden Sie zum Hinzufügen von Regeln zu einem vorhandenen GrammarBuilder Objekt die AddOperatoren Addition , , Append, AppendDictation, AppendRuleReferenceund AppendWildcard Methoden.
Von Bedeutung
Die Spracherkennung kann eine Ausnahme auslösen, wenn eine Spracherkennungsgrammatik verwendet wird, die doppelte semantische Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen 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
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder Klasse aus einer Reihe 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 wird GrammarBuilderChoices eine Grammatik erstellt, die einen der beiden Ausdrücke "Make background colorChoice" oder "Set background to colorChoice" erkennt.
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 jedes 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 Choices Objekt stellt diese Funktionalität für Grammatiken bereit, die mit GrammarBuilder.
Das Beispiel erstellt schließlich ein Grammar Objekt aus einem GrammarBuilder konstruierten Objekt aus einem Choices Objekt.
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
GrammarBuilder colorElement = new GrammarBuilder(colorChoice);
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase = new GrammarBuilder("Make background");
makePhrase.Append(colorElement);
GrammarBuilder setPhrase = new GrammarBuilder("Set background to");
setPhrase.Append(colorElement);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar 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 Auswahlmöglichkeiten zum Erstellen einer GrammarBuilder-Grammatik.
Weitere Informationen
Gilt für:
GrammarBuilder(SemanticResultKey)
- Quelle:
- GrammarBuilder.cs
- 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, mit der die beiden Ausdrücke " Hintergrundfarbechoice erstellen" und "Hintergrund auf ColorChoice festlegen" erkannt werden können, wobei "colorChoice " aus einer Reihe von Farben ausgewählt ist. Mit der Grammatik kann ein Benutzer mehrere Farbnamen sprechen und semantische Informationen zum erkannten Farbnamen an die Anwendung zurückgeben.
Im Beispiel wird eine einzelne SemanticResultKey verwendet, mit der Sie die SemanticValue vom Benutzer gesprochene Farbe abrufen können. Wenn die Eingabe beispielsweise den Ausdruck "Hintergrund auf Rot festlegen" enthält, enthält das Erkennungsergebnis den semantischen Wert "#FF0000", den Sie mithilfe eines Handlers für das SpeechRecognized Ereignis abrufen können.
Im Beispiel werden StringSemanticResultValueSemanticResultKeyGrammarBuilderChoicesdie Einschränkungen erstellt, 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 RecognizedPhrase, die im Handler für das SpeechRecognized Ereignis verfügbar ist, zugreifen. Wenn die GrammarBuilder Definition einer SemanticResultKey, kann dies verwendet werden, um die semantischen Informationen in einem Erkennungsergebnis abzurufen, das dem Schlüssel zugeordnet ist. Sehen Sie sich das Beispiel für Append(SemanticResultKey), und siehe auch SemanticResultValue und SemanticResultKey.
Von Bedeutung
Wenn Sie Objekte erstellenGrammarBuilder, die Objekte enthalten oder SemanticResultKey Instanzen enthaltenSemanticResultValue, sollten Sie vermeiden, doppelte semantische Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen zu erstellen, die die Value Eigenschaft eines SemanticValue Objekts wiederholt ändern können. 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
- 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
Das semantische Wert- oder Name/Wert-Paar.
Beispiele
Im folgenden Beispiel wird eine Spracherkennungsgrammatik erstellt, mit der die beiden Ausdrücke " Hintergrundfarbechoice erstellen" und "Hintergrund auf ColorChoice festlegen" erkannt werden können, wobei "colorChoice " aus einer Reihe von Farben ausgewählt ist. Mit der Grammatik kann ein Benutzer mehrere Farbnamen sprechen und semantische Informationen zum erkannten Farbnamen an die Anwendung zurückgeben.
Im Beispiel wird eine einzelne SemanticResultKey verwendet, mit der Sie die SemanticValue vom Benutzer gesprochene Farbe abrufen können. Wenn die Eingabe beispielsweise den Ausdruck "Hintergrund auf Rot festlegen" enthält, enthält das Erkennungsergebnis den semantischen Wert "#FF0000", den Sie mithilfe eines Handlers für das SpeechRecognized Ereignis abrufen können.
Im Beispiel werden StringSemanticResultValueSemanticResultKeyGrammarBuilderChoicesdie Einschränkungen erstellt, 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 RecognizedPhrase, die im Handler für das SpeechRecognized Ereignis verfügbar ist, zugreifen. Wenn die GrammarBuilder Definition einer SemanticResultKey, kann dies verwendet werden, um die semantischen Informationen in einem Erkennungsergebnis abzurufen, das dem Schlüssel zugeordnet ist. Sehen Sie sich das Beispiel für Append(SemanticResultKey), und siehe auch SemanticResultValue und SemanticResultKey.
Von Bedeutung
Wenn Sie Objekte erstellenGrammarBuilder, die Objekte enthalten oder SemanticResultKey Instanzen enthaltenSemanticResultValue, sollten Sie vermeiden, doppelte semantische Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen zu erstellen, die die Value Eigenschaft eines SemanticValue Objekts wiederholt ändern können. 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
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder Klasse aus einer Abfolge 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 Abfolge von Wörtern.
Beispiele
Im folgenden Beispiel wird GrammarBuilderChoices eine Grammatik erstellt, die einen der beiden Ausdrücke "Make background colorChoice" oder "Set background to colorChoice" erkennt.
Nach dem Erstellen einer Liste zulässiger Werte für colorChoice mithilfe eines Choices Objekts initialisiert das Beispiel zwei GrammarBuilder Objekte makePhrase und setPhraseverwendet eine Zeichenfolge als Argument.
Im Beispiel wird schließlich ein Grammar Objekt aus einem Choices Objekt erstellt, das in ein GrammarBuilder Objekt umgegossen 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 genau gesprochenen Ausdruck dar, den die Grammatik der Spracherkennung 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
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder Klasse für eine Teilmenge einer Abfolge 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 Abfolge von Wörtern.
- subsetMatchingCriteria
- SubsetMatchingMode
Der Abgleichsmodus, den die Spracherkennungsgrammatik verwendet, um den Ausdruck zu erkennen.
Beispiele
Im folgenden Beispiel wird für jeden SubsetMatchingMode Wert eine Spracherkennungsgrammatik und eine Grammatik für die Auswahl zwischen den Grammatiken für den Abgleichsmodus erstellt. Wenn der Wert von phrase "one two two three five six seven" lautet, erkennt die Subsequence-Grammatik die Eingabe "zwei drei vier", aber nicht die Eingabe "eine drei fünf". 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 erzielen. 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 Abgleichsmodi 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
- 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 Mindestanzahl der Eingaben, die mit dem durch definierten builder Element übereinstimmen, müssen eine Übereinstimmung darstellen.
- maxRepeat
- Int32
Die maximale Anzahl von Eingaben, die mit dem durch definierten builder Element übereinstimmen, können eine Übereinstimmung darstellen.
Beispiele
Im folgenden Beispiel wird eine Grammatik für die Spracherkennung zum Sortieren einer Pizza erstellt. Es beginnt mit einem optionalen, öffnenden Ausdruck, gefolgt von einem bis vier Toppings 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 maxRepeatsein.
Von Bedeutung
Wenn Sie Wiederholungen für GrammarBuilder Objekte angeben, die oder Instanzen enthalten SemanticResultValueSemanticResultKey , sollten Sie vermeiden, doppelte semantische Elemente mit demselben Schlüsselnamen oder mehreren semantischen Elementen zu erstellen, die die Value Eigenschaft eines SemanticValue Objekts wiederholt ändern können. 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
- Quelle:
- GrammarBuilder.cs
Initialisiert eine neue Instanz der GrammarBuilder Klasse aus der Abfolge von Wörtern in einem String und gibt an, wie oft die String Wiederholte 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 Abfolge von Wörtern.
- minRepeat
- Int32
Die Mindestanzahl der Eingaben, die mit dem Ausdruck übereinstimmen, müssen eine Übereinstimmung darstellen.
- maxRepeat
- Int32
Die maximale Anzahl von Eingaben, die mit dem Ausdruck übereinstimmen, können eine Übereinstimmung darstellen.
Beispiele
Im folgenden Beispiel wird eine Grammatik für die Spracherkennung zum Sortieren einer Pizza erstellt. Es beginnt mit einem optionalen, öffnenden Ausdruck, gefolgt von einem bis vier Toppings 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 als oder gleich dem Wert von maxRepeatsein. Weitere Informationen zum Erstellen einer Spracherkennungsgrammatik, die Zeichenfolgen enthält, finden Sie unter Verwenden von Zeichenfolgen zum Erstellen einer GrammarBuilder-Grammatik.