GrammarBuilder コンストラクター

定義

GrammarBuilder クラスの新しいインスタンスを初期化します。

オーバーロード

GrammarBuilder()

GrammarBuilder クラスの新しい空のインスタンスを初期化します。

GrammarBuilder(Choices)

代替のセットから GrammarBuilder クラスの新しいインスタンスを初期化します。

GrammarBuilder(SemanticResultKey)

セマンティクス キーから GrammarBuilder クラスの新しいインスタンスを初期化します。

GrammarBuilder(SemanticResultValue)

セマンティクス値から GrammarBuilder クラスの新しいインスタンスを初期化します。

GrammarBuilder(String)

言葉のシーケンスから GrammarBuilder クラスの新しいインスタンスを初期化します。

GrammarBuilder(String, SubsetMatchingMode)

言葉のシーケンスのサブセットについて、GrammarBuilder クラスの新しいインスタンスを初期化します。

GrammarBuilder(GrammarBuilder, Int32, Int32)

繰り返し要素から GrammarBuilder クラスの新しいインスタンスを初期化します。

GrammarBuilder(String, Int32, Int32)

GrammarBuilder の単語のシーケンスから String クラスの新しいインスタンスを初期化し、String を繰り返すことができる回数を指定します。

注釈

このクラスのインスタンスは、他のクラスからの暗黙的な変換、または GrammarBuilder 2 番目のオブジェクトを持つオブジェクトと新しいを組み合わせることによって取得することもできます GrammarBuilder 。 詳細については、Implicit メソッドと Addition メソッドを参照してください。

既存のに制約を追加するには、、、、 GrammarBuilder Add 、およびの各 Append AppendDictation AppendRuleReference AppendWildcard メソッドと Addition 演算子を使用します。

重要

同じキー名または複数のセマンティック要素を持つ重複するセマンティック要素が含まれている音声認識文法を使用すると、音声認識エンジンは例外をスローし、同じセマンティック要素の値を繰り返し変更する可能性があります。

音声認識文法の作成と使用の詳細については、「 音声認識」を参照してください。

GrammarBuilder()

GrammarBuilder クラスの新しい空のインスタンスを初期化します。

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

次の例では、オブジェクトとオブジェクトを使用して、 GrammarBuilder Choices "背景 色を選択 する" または "背景を colorchoice に設定する" という2つのフレーズのいずれかを認識できる文法を作成します。

この例では、オブジェクトを使用して、 Choices オブジェクトの配列から colorchoice に使用できる値のリストを作成し String ます。 Choicesオブジェクトは、SRGS 仕様の要素に似ています。また、オブジェクトは、 one-of 話されたときに認識できる一連の代替語句で構成されています。 また、オブジェクトを使用して、 Choices 2 つのオブジェクトの配列を、 GrammarBuilder 結果の文法が認識できる代替語句のペアにグループ化します。 代替語または句は、ほとんどの文法のコンポーネントであり、 Choices オブジェクトはを使用して構築された文法に対してこの機能を提供し GrammarBuilder ます。

最後の例では、 Grammar オブジェクトから構築されたからオブジェクトを作成し GrammarBuilder Choices ます。

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

注釈

既存のオブジェクトに規則を追加するには、、、、 GrammarBuilder Add 、およびの各 Append AppendDictation AppendRuleReference AppendWildcard メソッドと Addition 演算子を使用します。

重要

同じキー名または複数のセマンティック要素を持つ重複するセマンティック要素が含まれている音声認識文法を使用すると、音声認識エンジンは例外をスローし、同じセマンティック要素の値を繰り返し変更する可能性があります。

こちらもご覧ください

適用対象

GrammarBuilder(Choices)

代替のセットから GrammarBuilder クラスの新しいインスタンスを初期化します。

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)

パラメーター

alternateChoices
Choices

代替のセット。

次の例では、オブジェクトとオブジェクトを使用して、 GrammarBuilder Choices "背景 色を選択 する" または "背景を colorchoice に設定する" という2つのフレーズのいずれかを認識できる文法を作成します。

この例では、オブジェクトを使用して、 Choices オブジェクトの配列から colorchoice に使用できる値のリストを作成し String ます。 Choicesオブジェクトは、SRGS 仕様の要素に似ています。また、オブジェクトは、 one-of 話されたときに認識される可能性がある一連の代替語句で構成されています。 また、オブジェクトを使用して、 Choices 2 つのオブジェクトの配列を、 GrammarBuilder 結果の文法が認識できる代替語句のペアにグループ化します。 代替語または句は、ほとんどの文法のコンポーネントであり、 Choices オブジェクトはを使用して構築された文法に対してこの機能を提供し GrammarBuilder ます。

最後の例では、 Grammar オブジェクトから構築されたからオブジェクトを作成し GrammarBuilder Choices ます。

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

注釈

代替手段を含む音声認識文法を構築する方法の詳細については、「 選択肢を使用して GrammarBuilder 文法を作成する」を参照してください。

こちらもご覧ください

適用対象

GrammarBuilder(SemanticResultKey)

セマンティクス キーから GrammarBuilder クラスの新しいインスタンスを初期化します。

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)

パラメーター

key
SemanticResultKey

セマンティクス キー。

次の例では、"背景色の 選択 を行う" と "背景を Colorchoice に設定する" という2つの語句を認識できる音声認識文法を作成します。色のセットから colorchoice を選択します。 文法を使用すると、ユーザーはいくつかの色の名前を読み上げ、認識された色の名前に関するセマンティック情報をアプリケーションに返すことができます。

この例では、 SemanticResultKey SemanticValue ユーザーが読み上げた色に関連付けられているを取得するための単一のを使用します。 たとえば、入力に "背景を赤に設定する" という語句が含まれている場合、認識結果には "#FF0000" というセマンティック値が含まれます。これは、イベントのハンドラーを使用して取得できます SpeechRecognized

この例では、、、、、およびの各オブジェクトを使用して、 String Choices 最後の SemanticResultKey SemanticResultValue GrammarBuilder オブジェクトに含まれるすべての制約を作成し GrammarBuilder bothPhrases ます。 最後に、この例では、完了したからオブジェクトを構築し Grammar 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;  
}  

注釈

オブジェクトからインスタンスを作成する場合は、 GrammarBuilder SemanticResultValue 認識結果で返される可能性のある文法にセマンティック情報を追加します。 認識結果のセマンティック情報にアクセスするには、のプロパティを使用し Semantics RecognizedPhrase ます。これは、イベントのハンドラーで利用でき SpeechRecognized ます。 がを定義する場合、これを使用して、 GrammarBuilder SemanticResultKey キーに関連付けられている認識結果のセマンティック情報を取得できます。 「」の例を参照 Append(SemanticResultKey) し、「」および「」も参照してください SemanticResultValue SemanticResultKey

重要

GrammarBuilderまたはのインスタンスを含むオブジェクトを構築する場合は SemanticResultValue SemanticResultKeyValue オブジェクトのプロパティを繰り返し変更する可能性のある同じキー名または複数のセマンティック要素で、重複するセマンティック要素を作成しないようにしてください SemanticValue 。 このような状況が発生した場合、音声認識エンジンは例外をスローすることがあります。

こちらもご覧ください

適用対象

GrammarBuilder(SemanticResultValue)

セマンティクス値から GrammarBuilder クラスの新しいインスタンスを初期化します。

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)

パラメーター

value
SemanticResultValue

セマンティクス値または名前と値のペア。

次の例では、"背景色の 選択 を行う" と "背景を Colorchoice に設定する" という2つの語句を認識できる音声認識文法を作成します。色のセットから colorchoice を選択します。 文法を使用すると、ユーザーはいくつかの色の名前を読み上げ、認識された色の名前に関するセマンティック情報をアプリケーションに返すことができます。

この例では、 SemanticResultKey SemanticValue ユーザーが読み上げた色に関連付けられているを取得するための単一のを使用します。 たとえば、入力に "背景を赤に設定する" という語句が含まれている場合、認識結果には "#FF0000" というセマンティック値が含まれます。これは、イベントのハンドラーを使用して取得できます SpeechRecognized

この例では、、、、、およびの各オブジェクトを使用して、 String Choices 最後の SemanticResultKey SemanticResultValue GrammarBuilder オブジェクトに含まれるすべての制約を作成し GrammarBuilder bothPhrases ます。 最後に、この例では、完了したからオブジェクトを構築し Grammar 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;  
}  

注釈

オブジェクトからインスタンスを作成する場合は、 GrammarBuilder SemanticResultValue 認識結果で返される可能性のある文法にセマンティック情報を追加します。 認識結果のセマンティック情報にアクセスするには、のプロパティを使用し Semantics RecognizedPhrase ます。これは、イベントのハンドラーで利用でき SpeechRecognized ます。 がを定義する場合、これを使用して、 GrammarBuilder SemanticResultKey キーに関連付けられている認識結果のセマンティック情報を取得できます。 「」の例を参照 Append(SemanticResultKey) し、「」および「」も参照してください SemanticResultValue SemanticResultKey

重要

GrammarBuilderまたはのインスタンスを含むオブジェクトを構築する場合は SemanticResultValue SemanticResultKeyValue オブジェクトのプロパティを繰り返し変更する可能性のある同じキー名または複数のセマンティック要素で、重複するセマンティック要素を作成しないようにしてください SemanticValue 。 このような状況が発生した場合、音声認識エンジンは例外をスローすることがあります。

こちらもご覧ください

適用対象

GrammarBuilder(String)

言葉のシーケンスから GrammarBuilder クラスの新しいインスタンスを初期化します。

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)

パラメーター

phrase
String

言葉のシーケンス。

次の例では、オブジェクトとオブジェクトを使用して、 GrammarBuilder Choices "背景 色を選択 する" または "背景を colorchoice に設定する" という2つのフレーズのいずれかを認識できる文法を作成します。

オブジェクトを使用して Colorchoice に使用できる値のリストを作成した後、この例では、 Choices 引数として文字列を使用して、2つのオブジェクトを初期化し GrammarBuilder makePhrase setPhrase ます。

最後の例では、オブジェクトにキャストされたオブジェクトからオブジェクトを作成し Grammar Choices GrammarBuilder ます。

private Grammar CreateColorGrammar()  
{  

  // Create a set of color choices.  
  Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});  
  GrammarBuilder colorElement = new GrammarBuilder(colorChoice);  

  // Create grammar builders for the two versions of the phrase.  
  GrammarBuilder makePhrase = new GrammarBuilder("Make background");  
  makePhrase.Append(colorElement);  
  GrammarBuilder setPhrase = new GrammarBuilder("Set background to");  
  setPhrase.Append(colorElement);  

  // Create a Choices for the two alternative phrases, convert the Choices  
  // to a GrammarBuilder, and construct the Grammar object from the result.  
  Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});  
  Grammar grammar = new Grammar((GrammarBuilder)bothChoices);  
  grammar.Name = "backgroundColor";  
  return grammar;  
}  

注釈

語句は、音声認識の文法で認識できる、完全に読み上げられた語句を表します。 文字列を含む音声認識文法を構築する方法の詳細については、「文字列を使用して GrammarBuilder 文法を作成する」を参照してください。

こちらもご覧ください

適用対象

GrammarBuilder(String, SubsetMatchingMode)

言葉のシーケンスのサブセットについて、GrammarBuilder クラスの新しいインスタンスを初期化します。

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)

パラメーター

phrase
String

言葉のシーケンス。

subsetMatchingCriteria
SubsetMatchingMode

句を認識するために音声認識文法が使用する一致モード。

次の例では、各値に対して音声認識の文法を作成し、文法 SubsetMatchingMode を照合モード文法の中から選択するための文法を作成します。 の値 phrase が "1 2 3 4 5 6 7" の場合、サブシーケンス文法は入力 "2 3 4" を認識しますが、入力 "1 3 5" は認識しません。 ただし、順序付けられたサブセット文法では、両方の入力が認識されます。

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

注釈

パラメーターは、 phrase 音声認識の文法で認識できる語句を表します。 パラメーターは、語句 subsetMatchingMode 全体を正常に認識するために読み上げることができる語句のサブセットを指定します。 これを使用すると、ユーザーが項目に一致する名前全体を話す必要がなく、長い名前を持つエントリのリストを含む文法を作成できます。

照合モードの詳細については、「」を参照してください SubsetMatchingMode 。 文字列を含む音声認識文法を構築する方法の詳細については、「文字列を使用して GrammarBuilder 文法を作成する」を参照してください。

こちらもご覧ください

適用対象

GrammarBuilder(GrammarBuilder, Int32, Int32)

繰り返し要素から GrammarBuilder クラスの新しいインスタンスを初期化します。

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)

パラメーター

builder
GrammarBuilder

繰り返される要素。

minRepeat
Int32

builder によって定義される要素と一致する入力が、一致を構成するために発生する必要がある最小回数。

maxRepeat
Int32

builder によって定義される要素と一致する入力が、一致を構成するために発生できる最大回数。

次の例では、ピザの注文用に音声認識文法を作成します。 これは、省略可能な、開始語句、1 ~ 4 トッピング、"ピザ" という語で終了します。

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

注釈

の値が0の場合、 minRepeat 新しいは GrammarBuilder 省略可能な要素を表します。

の値は、 minRepeat 0 以上、の値以下である必要があり maxRepeat ます。

重要

またはのインスタンスを含むオブジェクトに対して繰り返しを指定する場合は GrammarBuilder SemanticResultValue SemanticResultKeyValue オブジェクトのプロパティを繰り返し変更する可能性のある同じキー名または複数のセマンティック要素で、重複するセマンティック要素を作成しないようにしてください SemanticValue 。 このような状況が発生した場合、音声認識エンジンは例外をスローすることがあります。

こちらもご覧ください

適用対象

GrammarBuilder(String, Int32, Int32)

GrammarBuilder の単語のシーケンスから String クラスの新しいインスタンスを初期化し、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)

パラメーター

phrase
String

繰り返される言葉のシーケンス。

minRepeat
Int32

その句と一致する入力が、一致を構成するために発生する必要がある最小回数。

maxRepeat
Int32

その句と一致する入力が、一致を構成するために発生できる最大回数。

次の例では、ピザの注文用に音声認識文法を作成します。 これは、省略可能な、開始語句、1 ~ 4 トッピング、"ピザ" という語で終了します。

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

注釈

の値が0の場合、 minRepeat 新しいは GrammarBuilder 省略可能な要素を表します。

の値は、 minRepeat 0 以上、の値以下である必要があり maxRepeat ます。 文字列を含む音声認識文法を構築する方法の詳細については、「文字列を使用して GrammarBuilder 文法を作成する」を参照してください。

こちらもご覧ください

適用対象