SubsetMatchingMode 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
列舉子集比對模式的值。
public enum class SubsetMatchingMode
public enum SubsetMatchingMode
type SubsetMatchingMode =
Public Enum SubsetMatchingMode
- 繼承
欄位
OrderedSubset | 1 | 指出子集比對模式是 OrderedSubset。 |
OrderedSubsetContentRequired | 3 | 指出子集比對模式是 OrderedSubsetContentRequired。 |
Subsequence | 0 | 指出子集比對模式是 Subsequence。 |
SubsequenceContentRequired | 2 | 指出子集比對模式是 SubsequenceContentRequired。 |
範例
以下是一個測試常式,其會針對每個 SubsetMatchingModes
產生四 Grammar 個物件,並使用相同的片語。 然後可以測試這些 Grammar 物件。
private void CreateSubsetMatchTest()
{
foreach ( System.Speech.Recognition.SubsetMatchingMode mode
in Enum.GetValues(typeof(System.Speech.Recognition.SubsetMatchingMode)))
{
GrammarBuilder gb = new GrammarBuilder("a car the truck a boat that plane",mode);
Grammar grammar = new Grammar(gb);
grammar.Name = mode.ToString();
grammar.Enabled=true;
_recognizer.LoadGrammar(grammar);
}
}
備註
在 System.Speech 中,您可以建構可成功辨識片語的文法,即使音訊輸入中只找到其內容的子集也一樣。
根據預設,辨識引擎需要與整個片語完全相符。 辨識引擎也可以根據做為 或 SrgsSubset 建構 Append 函式之引數 GrammarBuilder 或 方法的成員所 SubsetMatchingMode 定義的參數,比對部分片語。
下列說明每個成員在文法中使用時,每個 SubsetMatchingMode 成員如何影響辨識,該文法包含「汽車貨車是飛機的飛機」。
OrderedSubset
此模式表示如果下列情況成立,則會使用片語的子集來成功辨識整個片語:
片語中的一或多個字會在音訊輸入中辨識。
這些辨識字組的相對順序與片語相同。
相符字組只能包含前置詞和發行項。
使用 OrderedSubset 模式將「car the truck a truck a plane」 片語新增至文法,會產生下列辨識結果:
輸入片語 | 結果 |
---|---|
「一輛汽車貨車一輛飛機」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the truck a truck」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the car the plane」 | 可辨識整個片語「汽車貨車一次飛機」。 辨識的子集不一定是原始字串的序列。 |
「一輛汽車,一輛貨車該平面」 | 辨識不成功。 這些字的順序不依序。 |
「a」 | 可辨識整個片語「汽車貨車一次飛機」。 述詞和發行項用於辨識。 |
OrderedSubsetContentRequired
此模式表示如果下列情況成立,則會使用片語的子集來成功辨識整個片語:
片語中的一或多個單字會在音訊輸入中辨識,而且
這些辨識字組的相對順序與片語相同。
相符字組不能只包含前置詞和發行項。
使用 OrderedSubsetContentRequired 模式,將「汽車貨車一次飛機」一詞新增至文法,會產生下列辨識結果:
輸入片語 | 結果 |
---|---|
「一輛汽車貨車一輛飛機」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the truck a truck」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the car the plane」 | 可辨識整個片語「汽車貨車一次飛機」。 辨識的子集不一定是原始字串的序列。 |
「一輛汽車,一輛貨車該平面」 | 辨識不成功。 這些字的順序不依序。 |
「a」 | 辨識不成功。 語音輸入必須包含文章和前置詞以外的字組。 |
子序列:
此模式表示如果下列情況成立,則會使用片語的子集來成功辨識整個片語:
片語中的一或多個單字會在音訊輸入中辨識為片語序列,而且
這些辨識字組的相對順序與片語相同。
相符字組只能包含前置詞和發行項。
使用 Subsequence 模式將「car the truck a truck a plane」 片語新增至文法,會產生下列辨識結果:
輸入片語 | 結果 |
---|---|
「一輛汽車貨車一輛飛機」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the truck a truck」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the car the plane」 | 辨識不成功。 辨識的子集必須是原始字串的序列。 |
「一輛汽車,一輛貨車該平面」 | 辨識不成功。 這些字的順序不依序。 |
「a」 | 可辨識整個片語「汽車貨車一次飛機」。 述詞和發行項用於辨識。 |
SubsequenceContentRequired
此模式表示如果下列情況成立,則會使用片語的子集來成功辨識整個片語:
比對字串中的一或多個字會在音訊輸入中辨識為片語序列。
相符字組不能只包含前置詞和發行項。
使用 SubsequenceContentRequired 模式將「car the truck a plane」 片語新增至文法,會產生下列辨識結果:
輸入片語 | 結果 |
---|---|
「一輛汽車貨車一輛飛機」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the truck a truck」 | 可辨識整個片語「汽車貨車一次飛機」。 |
「a car the car the plane」 | 辨識不成功。 辨識的子集必須是原始字串的序列。 |
「一輛汽車,一輛貨車該平面」 | 辨識不成功。 這些字的順序不依序。 |
「a」 | 辨識不成功。 語音輸入必須包含文章和前置詞以外的字組。 |