次の方法で共有


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)

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

注釈

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

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

Important

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

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

GrammarBuilder()

ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

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

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

次の例では、 GrammarBuilder オブジェクトと Choices オブジェクトを使用して、"Make background colorChoice" または "Set background to colorChoice" の 2 つの語句のいずれかを認識できる文法を構築します。

この例では、Choices オブジェクトを使用して、String オブジェクトの配列から colorChoice の許容値の一覧を作成します。 Choices オブジェクトは、SRGS 仕様のone-of要素に似ています。また、一連の代替フレーズが含まれています。そのうちの 1 つは、読み上げられたときに認識できます。 この例では、 Choices オブジェクトを使用して、2 つの GrammarBuilder オブジェクトの配列を、結果として得られる文法で認識できる代替語句のペアにグループ化します。 代替単語または語句は、ほとんどの文法の構成要素であり、 Choices オブジェクトは、 GrammarBuilderで構築された文法にこの機能を提供します。

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

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 オブジェクトにルールを追加するには、 AddAppendAppendDictationAppendRuleReference、および AppendWildcard メソッド、および Addition 演算子を使用します。

Important

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

こちらもご覧ください

適用対象

GrammarBuilder(Choices)

ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

代替のセットから 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 オブジェクトを使用して、"Make background colorChoice" または "Set background to colorChoice" の 2 つの語句のいずれかを認識できる文法を構築します。

この例では、Choices オブジェクトを使用して、String オブジェクトの配列から colorChoice の許容値の一覧を作成します。 Choices オブジェクトは、SRGS 仕様のone-of要素に似ています。また、一連の代替フレーズが含まれています。これらはいずれも、読み上げられたときに認識できます。 この例では、 Choices オブジェクトを使用して、2 つの GrammarBuilder オブジェクトの配列を、結果として得られる文法で認識できる代替語句のペアにグループ化します。 代替単語または語句は、ほとんどの文法の構成要素であり、 Choices オブジェクトは、 GrammarBuilderで構築された文法にこの機能を提供します。

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

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.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

セマンティック キーから 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

セマンティック キー。

次の例では、2 つの語句 "Make background colorChoice" と "Set background to colorChoice" を認識できる音声認識文法を作成します。 colorChoice は一連の色から選択されます。 文法では、ユーザーが複数の色名のいずれかを話し、認識された色名に関するセマンティック情報をアプリケーションに返すことができます。

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

この例では、 StringChoicesSemanticResultKeySemanticResultValue、および GrammarBuilder オブジェクトを使用して、最後の GrammarBuilder オブジェクトに含まれるすべての制約を作成 bothPhrases。 最後に、完成したGrammarBuilderからGrammar オブジェクトを構築します。

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

注釈

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

Important

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

こちらもご覧ください

適用対象

GrammarBuilder(SemanticResultValue)

ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

セマンティック値から 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

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

次の例では、2 つの語句 "Make background colorChoice" と "Set background to colorChoice" を認識できる音声認識文法を作成します。 colorChoice は一連の色から選択されます。 文法では、ユーザーが複数の色名のいずれかを話し、認識された色名に関するセマンティック情報をアプリケーションに返すことができます。

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

この例では、 StringChoicesSemanticResultKeySemanticResultValue、および GrammarBuilder オブジェクトを使用して、最後の GrammarBuilder オブジェクトに含まれるすべての制約を作成 bothPhrases。 最後に、完成したGrammarBuilderからGrammar オブジェクトを構築します。

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

注釈

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

Important

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

こちらもご覧ください

適用対象

GrammarBuilder(String)

ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

一連の単語から 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 オブジェクトを使用して、"Make background colorChoice" または "Set background to colorChoice" の 2 つの語句のいずれかを認識できる文法を構築します。

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

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

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.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

単語のシーケンスのサブセットに対して、 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 5 6 7" の場合、サブシーケンス文法は入力 "two three four" を認識しますが、入力 "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.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

繰り返し要素から 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 個のトッピングが続き、"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;
}

注釈

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

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

Important

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

こちらもご覧ください

適用対象

GrammarBuilder(String, Int32, Int32)

ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs
ソース:
GrammarBuilder.cs

String内の単語のシーケンスからGrammarBuilder クラスの新しいインスタンスを初期化し、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 個のトッピングが続き、"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;
}

注釈

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

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

こちらもご覧ください

適用対象