Windows 使用sapi检测电话号码?

Windows 使用sapi检测电话号码?,windows,visual-c++,speech-recognition,sapi,Windows,Visual C++,Speech Recognition,Sapi,我目前正在使用sapi 5.4,我想检测一个电话号码,该号码肯定是0-9之间的10位数。在语法文件中指定的最佳方式是什么?下面是一个简单的语法规则集,它定义了一个7-10位数的规则: <rule name="phoneno"> <phrase min="7" max="10"> <ruleref name="digit" propname="digit"/> </phrase> </rule> <rule nam

我目前正在使用sapi 5.4,我想检测一个电话号码,该号码肯定是0-9之间的10位数。在语法文件中指定的最佳方式是什么?

下面是一个简单的语法规则集,它定义了一个7-10位数的规则:

<rule name="phoneno">
  <phrase min="7" max="10">
    <ruleref name="digit" propname="digit"/>
  </phrase>
</rule>

<rule name="digit">
  <l>
    <p val="0">0</p>
    <p val="1">1</p>
    <p val="2">2</p>
    <p val="3">3</p>
    <p val="4">4</p>
    <p val="5">5</p>
    <p val="6">6</p>
    <p val="7">7</p>
    <p val="8">8</p>
    <p val="9">9</p>
  </l>
</rule>

0

1

2

3

4

5

6

7

8

9

这还可以设置语义属性,以便您可以通过遍历语义属性树来构建电话号码