`

动态语法编译XBNF

 
阅读更多

简介: XBNF采用ebnf语法作为基础语法

         XBNF的作用是让机器识别人的意图

 

符号含义:


  $hello=你好    #定义变量hello,赋值为你好,变量名为中文或者字母

  引用变量用$符号,以空格结束,比如: $hello  $day

 

举例和说明:

  • #这是一个注释
  • $name=(张三|李四);    #定义变量name,取值必须是张三或者李四,比如打给$name
  • $digit=1|2|3|4|5|6|7|8|9|0  #定义变量digit,必须为其中一个值
  • $apple=(1|2)苹果                 #定义变量digit2,()表示必须有,比如你说1个苹果,2个苹果,苹果都能被识别,但是说3个苹果就不能识别了
  • $call=打[电话]给              #[]表示可有可无,所以打给和打电话给,识别出来是一样的语义
  • $phone= ( (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0) <$DIGIT >/min=2,max=11/ );  #min表示最小重复次数,max表示最大重复次数
  • $city1=大连|广州  $city2=武汉|深圳  $city3=($city1 | $city2 )   #变量的嵌套使用
  • ( \<s\> ($SEMANTIC_OUTPUT) \<\/s\> )  # \< , \>, \/都是转义字符,分别表示<, >, /
  • 在句子前后加上<s> </s>,用于表明句子的开始和结束
  • 大小: 38.8 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics