Compartir vía


GrammarBuilder Constructores

Definición

Inicializa una nueva instancia de la clase GrammarBuilder.

Sobrecargas

GrammarBuilder()

Inicializa una nueva instancia vacía de la clase GrammarBuilder.

GrammarBuilder(Choices)

Inicializa una nueva instancia de la clase GrammarBuilder a partir de un conjunto de alternativas.

GrammarBuilder(SemanticResultKey)

Inicializa una nueva instancia de la clase GrammarBuilder a partir de una clave semántica.

GrammarBuilder(SemanticResultValue)

Inicializa una nueva instancia de la clase GrammarBuilder a partir de un valor semántico.

GrammarBuilder(String)

Inicializa una nueva instancia de la clase GrammarBuilder a partir de una secuencia de palabras.

GrammarBuilder(String, SubsetMatchingMode)

Inicializa una nueva instancia de la clase GrammarBuilder para un subconjunto de una secuencia de palabras.

GrammarBuilder(GrammarBuilder, Int32, Int32)

Inicializa una nueva instancia de la clase GrammarBuilder a partir de un elemento repetido.

GrammarBuilder(String, Int32, Int32)

Inicializa una nueva instancia de la clase GrammarBuilder a partir del flujo de palabras en un objeto String y especifica cuántas veces se puede repetir String.

Comentarios

Las instancias de esta clase también se pueden obtener mediante conversiones implícitas de otras clases o combinando un GrammarBuilder objeto con un segundo objeto a desde un nuevo GrammarBuilder. Para obtener más información, consulte los Implicit métodos y Addition .

Para agregar restricciones a un existenteGrammarBuilder, use los Addmétodos , AppendDictationAppend, AppendRuleReference, y AppendWildcard y el Addition operador .

Importante

El reconocedor de voz puede producir una excepción cuando se usa una gramática de reconocimiento de voz que contiene elementos semánticos duplicados con el mismo nombre de clave o varios elementos semánticos que podrían modificar repetidamente el valor del mismo elemento semántico.

Para obtener más información sobre cómo crear y usar gramáticas de reconocimiento de voz, consulte Reconocimiento de voz.

GrammarBuilder()

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

Inicializa una nueva instancia vacía de la clase GrammarBuilder.

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

Ejemplos

En el ejemplo siguiente se usan GrammarBuilder objetos y Choices para construir una gramática que puede reconocer cualquiera de las dos frases, "Make background colorChoice" o "Set background to colorChoice".

En el ejemplo se usa un Choices objeto para crear una lista de valores aceptables para colorChoice a partir de una matriz de String objetos . Un Choices objeto es análogo al elemento de la one-of especificación SRGS y contiene un conjunto de frases alternativas, cualquiera de las cuales se puede reconocer cuando se habla. En el ejemplo también se usa un Choices objeto para agrupar una matriz de dos GrammarBuilder objetos en un par de frases alternativas que la gramática resultante puede reconocer. Las palabras o frases alternativas son un componente de la mayoría de las gramáticas y el Choices objeto proporciona esta funcionalidad para las gramáticas construidas con GrammarBuilder.

El ejemplo crea finalmente un Grammar objeto a partir de un GrammarBuilder objeto construido a partir de un Choices objeto .

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;
}

Comentarios

Para agregar reglas a un objeto existenteGrammarBuilder, use los Addmétodos , AppendDictationAppend, , AppendRuleReferencey AppendWildcard y el Addition operador .

Importante

El reconocedor de voz puede producir una excepción cuando se usa una gramática de reconocimiento de voz que contiene elementos semánticos duplicados con el mismo nombre de clave o varios elementos semánticos que podrían modificar repetidamente el valor del mismo elemento semántico.

Consulte también

Se aplica a

GrammarBuilder(Choices)

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

Inicializa una nueva instancia de la clase GrammarBuilder a partir de un conjunto de alternativas.

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)

Parámetros

alternateChoices
Choices

Conjunto de alternativas.

Ejemplos

En el ejemplo siguiente se usan GrammarBuilder objetos y Choices para construir una gramática que puede reconocer cualquiera de las dos frases, "Make background colorChoice" o "Set background to colorChoice".

En el ejemplo se usa un Choices objeto para crear una lista de valores aceptables para colorChoice a partir de una matriz de String objetos . Un Choices objeto es análogo al elemento de la one-of especificación SRGS y contiene un conjunto de frases alternativas, cualquiera de las cuales se puede reconocer cuando se habla. En el ejemplo también se usa un Choices objeto para agrupar una matriz de dos GrammarBuilder objetos en un par de frases alternativas que la gramática resultante puede reconocer. Las palabras o frases alternativas son un componente de la mayoría de las gramáticas y el Choices objeto proporciona esta funcionalidad para las gramáticas construidas con GrammarBuilder.

El ejemplo crea finalmente un Grammar objeto a partir de un GrammarBuilder objeto construido a partir de un Choices objeto .

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;
}

Comentarios

Para obtener más información sobre cómo crear una gramática de reconocimiento de voz que contenga alternativas, vea Using Choices to Create a GrammarBuilder Grammar.

Consulte también

Se aplica a

GrammarBuilder(SemanticResultKey)

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

Inicializa una nueva instancia de la clase GrammarBuilder a partir de una clave semántica.

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)

Parámetros

key
SemanticResultKey

La clave semántica.

Ejemplos

En el ejemplo siguiente se crea una gramática de reconocimiento de voz que puede reconocer las dos frases, "Make background colorChoice" y "Set background to colorChoice", donde colorChoice está seleccionado en un conjunto de colores. La gramática permite al usuario hablar cualquiera de varios nombres de color y devuelve información semántica sobre el nombre de color reconocido a la aplicación.

En el ejemplo se usa un único SemanticResultKey con el que se puede recuperar el SemanticValue objeto asociado al color hablado por el usuario. Por ejemplo, si la entrada contiene la frase "Establecer fondo en rojo", el resultado del reconocimiento contiene el valor semántico de "#FF0000", que puede recuperar mediante un controlador para el SpeechRecognized evento.

En el ejemplo se usan Stringobjetos , SemanticResultKeyChoices, , SemanticResultValuey GrammarBuilder para generar las restricciones incluidas en el último GrammarBuilder objeto , bothPhrases. Por último, el ejemplo construye un Grammar objeto a partir del objeto completado 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;
}

Comentarios

Al crear una GrammarBuilder instancia a partir de un SemanticResultValue objeto, se agrega información semántica a la gramática que se puede devolver en el resultado del reconocimiento. Puede acceder a la información semántica en el resultado del reconocimiento mediante la Semantics propiedad de RecognizedPhrase, que está disponible en el controlador para el SpeechRecognized evento. GrammarBuilder Si define un SemanticResultKey, se puede usar para recuperar la información semántica en un resultado de reconocimiento asociado a la clave. Vea el ejemplo de Append(SemanticResultKey), y vea también SemanticResultValue y SemanticResultKey.

Importante

Al construir GrammarBuilder objetos que contienen SemanticResultValue instancias o SemanticResultKey , asegúrese de evitar crear elementos semánticos duplicados con el mismo nombre de clave o varios elementos semánticos que podrían modificar repetidamente la Value propiedad de un SemanticValue objeto. El reconocedor de voz puede producir una excepción si encuentra estas circunstancias.

Consulte también

Se aplica a

GrammarBuilder(SemanticResultValue)

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

Inicializa una nueva instancia de la clase GrammarBuilder a partir de un valor semántico.

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)

Parámetros

value
SemanticResultValue

El valor o el par de nombre y valor semántico.

Ejemplos

En el ejemplo siguiente se crea una gramática de reconocimiento de voz que puede reconocer las dos frases, "Make background colorChoice" y "Set background to colorChoice", donde colorChoice está seleccionado en un conjunto de colores. La gramática permite al usuario hablar cualquiera de varios nombres de color y devuelve información semántica sobre el nombre de color reconocido a la aplicación.

En el ejemplo se usa un único SemanticResultKey con el que se puede recuperar el SemanticValue objeto asociado al color hablado por el usuario. Por ejemplo, si la entrada contiene la frase "Establecer fondo en rojo", el resultado del reconocimiento contiene el valor semántico de "#FF0000", que puede recuperar mediante un controlador para el SpeechRecognized evento.

En el ejemplo se usan Stringobjetos , SemanticResultKeyChoices, , SemanticResultValuey GrammarBuilder para generar las restricciones incluidas en el último GrammarBuilder objeto , bothPhrases. Por último, el ejemplo construye un Grammar objeto a partir del objeto completado 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;
}

Comentarios

Al crear una GrammarBuilder instancia a partir de un SemanticResultValue objeto, se agrega información semántica a la gramática que se puede devolver en el resultado del reconocimiento. Puede acceder a la información semántica en el resultado del reconocimiento mediante la Semantics propiedad de RecognizedPhrase, que está disponible en el controlador para el SpeechRecognized evento. GrammarBuilder Si define un SemanticResultKey, se puede usar para recuperar la información semántica en un resultado de reconocimiento asociado a la clave. Vea el ejemplo de Append(SemanticResultKey), y vea también SemanticResultValue y SemanticResultKey.

Importante

Al construir GrammarBuilder objetos que contienen SemanticResultValue instancias o SemanticResultKey , asegúrese de evitar crear elementos semánticos duplicados con el mismo nombre de clave o varios elementos semánticos que podrían modificar repetidamente la Value propiedad de un SemanticValue objeto. El reconocedor de voz puede producir una excepción si encuentra estas circunstancias.

Consulte también

Se aplica a

GrammarBuilder(String)

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

Inicializa una nueva instancia de la clase GrammarBuilder a partir de una secuencia de palabras.

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)

Parámetros

phrase
String

La secuencia de palabras.

Ejemplos

En el ejemplo siguiente se usan GrammarBuilder objetos y Choices para construir una gramática que puede reconocer cualquiera de las dos frases, "Make background colorChoice" o "Set background to colorChoice".

Después de crear una lista de valores aceptables para colorChoice mediante un Choices objeto , el ejemplo inicializa dos GrammarBuilder objetos makePhrase y setPhrase, utilizando una cadena como argumento.

El ejemplo crea finalmente un Grammar objeto a partir de un Choices objeto convertido a un GrammarBuilder objeto .

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;
}

Comentarios

La frase representa una frase hablada exacta que la gramática de reconocimiento de voz puede reconocer. Para obtener más información sobre la creación de una gramática de reconocimiento de voz que contiene cadenas, vea Using Strings to Create a GrammarBuilder Grammar.

Consulte también

Se aplica a

GrammarBuilder(String, SubsetMatchingMode)

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

Inicializa una nueva instancia de la clase GrammarBuilder para un subconjunto de una secuencia de palabras.

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)

Parámetros

phrase
String

La secuencia de palabras.

subsetMatchingCriteria
SubsetMatchingMode

El modo coincidente que la gramática de reconocimiento de voz usa para reconocer la frase.

Ejemplos

En el ejemplo siguiente se crea una gramática de reconocimiento de voz para cada SubsetMatchingMode valor y una gramática para elegir entre las gramáticas de modo coincidente. Si el valor de phrase es "uno de los dos tres cuatro cinco seis siete", la gramática de subsecuencia reconoce la entrada "dos tres cuatro", pero no la entrada "uno tres cinco". Sin embargo, la gramática de subconjunto ordenado reconoce ambas entradas.

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();
}

Comentarios

El phrase parámetro representa la frase que la gramática de reconocimiento de voz puede reconocer. El subsetMatchingMode parámetro especifica un subconjunto de la frase que se puede decir para lograr un reconocimiento correcto de toda la frase. Puede usarlo para crear una gramática con una lista de entradas que tienen nombres largos, sin necesidad de que los usuarios digan un nombre completo para que coincida con un elemento.

Para obtener más información sobre los modos de coincidencia, vea SubsetMatchingMode. Para obtener más información sobre la creación de una gramática de reconocimiento de voz que contiene cadenas, vea Using Strings to Create a GrammarBuilder Grammar.

Consulte también

Se aplica a

GrammarBuilder(GrammarBuilder, Int32, Int32)

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

Inicializa una nueva instancia de la clase GrammarBuilder a partir de un elemento repetido.

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)

Parámetros

builder
GrammarBuilder

Elemento repetido.

minRepeat
Int32

El número mínimo de veces que la entrada coincidente con el elemento definido por builder debe aparecer para que constituya una coincidencia.

maxRepeat
Int32

El número máximo de veces que la entrada coincidente con el elemento definido por builder puede aparecer para que constituya una coincidencia.

Ejemplos

En el ejemplo siguiente se crea una gramática de reconocimiento de voz para ordenar una pizza. Comienza con una frase opcional de apertura, seguida de uno a cuatro ingredientes, y se cierra con la palabra "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;
}

Comentarios

Si el valor de minRepeat es 0, el nuevo GrammarBuilder representa un elemento opcional.

El valor de minRepeat debe ser mayor o igual que 0 y menor o igual que el valor de maxRepeat.

Importante

Al especificar repeticiones para GrammarBuilder objetos que contienen SemanticResultValue instancias o SemanticResultKey , asegúrese de evitar la creación de elementos semánticos duplicados con el mismo nombre de clave o varios elementos semánticos que podrían modificar repetidamente la Value propiedad de un SemanticValue objeto. El reconocedor de voz puede producir una excepción si encuentra estas circunstancias.

Consulte también

Se aplica a

GrammarBuilder(String, Int32, Int32)

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

Inicializa una nueva instancia de la clase GrammarBuilder a partir del flujo de palabras en un objeto String y especifica cuántas veces se puede repetir String.

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)

Parámetros

phrase
String

La secuencia repetida de palabras.

minRepeat
Int32

El número mínimo de veces que la entrada coincidente con la frase debe aparecer para que constituya una coincidencia.

maxRepeat
Int32

El número máximo de veces que la entrada coincidente con la frase puede aparecer para que constituya una coincidencia.

Ejemplos

En el ejemplo siguiente se crea una gramática de reconocimiento de voz para ordenar una pizza. Comienza con una frase opcional de apertura, seguida de uno a cuatro ingredientes, y se cierra con la palabra "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;
}

Comentarios

Si el valor de minRepeat es 0, el nuevo GrammarBuilder representa un elemento opcional.

El valor de minRepeat debe ser mayor o igual que 0 y menor o igual que el valor de maxRepeat. Para obtener más información sobre cómo crear una gramática de reconocimiento de voz que contenga cadenas, vea Uso de cadenas para crear una gramática grammarBuilder.

Consulte también

Se aplica a