一种基于正则表达式的语义分析方法

文档序号:6542102阅读:1457来源:国知局
一种基于正则表达式的语义分析方法
【专利摘要】本发明公开了一种基于正则表达式的语义分析方法,包括步骤:建立正则表达式组合数据库,并将各组合和服务建立映射关系;获取用户语音输入所对应的文本信息,对文本信息进行组合的匹配;执行匹配的组合所关联的服务。本发明处理手段非常透明,利于开发者根据需求做进一步优化,并且语义分析精确、灵活、执行效率高。
【专利说明】一种基于正则表达式的语义分析方法
[【技术领域】]
[0001]本发明涉及语义分析领域,尤其涉及一种基于正则表达式的语义分析方法。
[【背景技术】]
[0002]语义分析技术被广泛地用于现实生活中,如iphone的siri服务,以及讯飞语音服务、百度语音服务等,均能为用户提供基于语音命令的搜索服务及其他服务,其主要做法是:先将语音数据转换为文本信息,然后利用文本匹配方式搜索关键字,根据关键字输出相应的项目,即单纯通过关键词进行语义分析,但是我们知道,这些服务中的语义分析方式不可避免地具有以下几种缺陷:一是由于识别的内容过于宽泛,需要大量的第三方通用语义识别开发包,导致程序体积臃肿,识别效率低;二是根据识别语义输出的项目无针对性,执行效率低;三是采用非常复杂并且不透明的处理过程,使得不便于对软件做出精细调整。因此,对识别、执行效率等拥有更高要求的汽车行驶环境,有必要提供一套新的语义分析方案。
[
【发明内容】
]
[0003]针对上述问题,本发明提供了一种基于正则表达式的语义分析方法,其不仅具有识别效率高、执行效率高的优势,还能根据需求做出精细调整。
[0004]具体技术方案如下:
[0005]一种基于正则表达式的语义分析方法,包括步骤:
[0006]根据关键字组建正则表达式组合,并将组建的组合预先存于数据库中,每个组合关联一项或多项服务;
[0007]获取用户语音输入所对应的文本信息,对所述文本信息进行组合的匹配;
[0008]执行匹配的组合所关联的服务。
[0009]人们可以根据所需的服务,预先设置与之对应的组合;当用户的语音转换为文本信息后,自动检测文本信息中是否含有匹配的组合,然后根据匹配的组合,执行相应的服务:首先,本发明订制化程度非常高,按正则表达式对关键字进行组合,并按正则表达式进行匹配,由于正则表达式是国际通用的文本处理规则,因此处理手段非常透明,开发者可以根据需要进行微调,而规避了深奥的语义识别理论;其次,本发明精确了识别范围,简化了识别流程,精简了程序运算资源;最后,本发明采用了关键字或组合与具体执行的服务相关联的方式,执行效率得到有效提闻。
[【专利附图】

【附图说明】]
[0010]图1是本发明的方法流程图。
[【具体实施方式】]
[0011]为了使本发明的目的、技术方案和优点更加清晰,下面结合附图和实施方式作进一步地详细描述。
[0012]本发明所述的基于正则表达式的语义分析方法,可以是基于ios、Android、WP等操作系统上的APP软件,其载体主要为移动终端,其可以广泛的用于语义分析领域,但需要说明的是,本方法尤其适合应用在车辆中,如在应用在车辆导航仪上,显而易见,在车辆导航仪上植入本方法对应的软体,将能够使其在语义分析效率、及执行效率上得到大幅提升。下面通过一较优实施例对本发明的方案做具体的介绍。
[0013]另外,正则表达式是国际通用的文本处理规则,但并不排除各大厂商进行规则的微调,其具体使用方法可以参考互联网上公开的文档,本文不予详述,当然,为了帮助本领域技术人员能够更好的理解,会在下文中简介本申请文件中多次使用到的符号,并会在下文中以举例的方式穿插阐述。
[0014]本发明所述的基于正则表达式的语义分析方法,包括步骤:
[0015]S1、根据关键字组建正则表达式组合,并将组建的组合预先存于数据库中,每个组合关联一项或多项服务;
[0016]当开发者打算一项服务时,首先要寻找人们在要求这一服务时,会说的惯常用语,找出多个惯用用语中的共性,即关键字,然后根据这些关键字,按正则表达式的规则,组建含这些关键字的正则表达式组合,然后将这一组合和其对应的服务进行关联;当开发者需要开发一整套服务时,则需要为一整套服务中的各种不同的服务分别关联不同的组合,这些组合预先存于数据库中,供需要的时候调用;
[0017]需要说明是,当仅使用一个关键字或一个关键词就可以精确定位服务的时候,可以建立该关键字或关键词和相应的服务进行关联,该关键字或关键词可存于数据库中,当然,为了统一性,也可以将单个关键字或单个关键词转换成正则表达式组合的形式存于数据库中;
[0018]本实施例优选为每个组合只关联一项服务,这样做的好处是,当文本信息中的内容成功匹配到相应的组合后,就可以立即执行组合所关联的服务,因此拥有更加高效的执行效率,尤其适用于对时间要求的高速行驶的车辆中;
[0019]需要说明的是,关联方式并非是一一对应的关系,即“组合-服务”之间的映射关系,可以是一一对应关系,可以是多对一的映射关系,当然也可以是一对多的映射关系,下文具体的实施例中即是建立多对一的映射关系;
[0020]S2、获取用户语音输入所对应的文本信息,对所述文本信息进行组合的匹配;
[0021]即根据正则式匹配规则,将文本信息中的内容和数据库中的组合进行匹配,检测文本信息中是否有匹配的组合存在;
[0022]需要说明的是,各个组合在对文本信息进行遍历式的匹配时,是具有顺序性的逐个匹配,具体可采用正序或倒序,但为了高效性,本发明并不排斥其他的高效的检索或匹配方式;
[0023]S3、执行匹配的组合所关联的服务;
[0024]即当在文本信息中检测到有匹配的组合存在时,则执行该组合所关联的服务。
[0025]在一优选实施例中,还有部分组合对应的设有功能参数,若文本信息和某组合匹配,而该组合对应的设有功能参数,则需要在文本信息相应的位置处提取出所述功能参数,若提取不到,则发出提示用户输入功能参数的请求。[0026]例如用户语音输入“上深圳宝安机场去”,该语音信息转换为文本信息后,文本信息与“(上.+)”的组合匹配,而该组合就设有一个表征地址信息的功能参数,因此匹配后,就会在“上”后面的文本信息中提取一个地址信息“深圳宝安机场”,并最终输出到“深圳宝安机场”的导航线路。
[0027]另外,至少部分组合还对应有附加参数,如在“(上.+)”的组合除了关联信息外,还具有附加信息,该附加信息是要排查“上海”、“上虞”等以“上”为开头的地址,可以看出,附加参数可以理解为是一种对有效信息的补充或对无效信息的排除。
[0028]在步骤S3中,在执行相应的服务之前,还包括确认或进一步选择性确认的步骤:所谓确认,即执行前的“是与否”的确认,如“(上.+)”的组合与“上深圳宝安机场去”匹配成功后,应该输出到“深圳宝安机场”的导航线路,但在执行该服务前,会有一确认如“请确认是否导航到深圳宝安机场”,若得到用户的确认后,立即执行该服务,输出到“深圳宝安机场”的导航线路;所谓进一步选择性的确认,如输出“到深圳宝安机场东,到深圳宝安机场西,请确认”,待用户确认后,然后输出相应的导航线路。
[0029]下面采用一具体的实施例,加以说明。
[0030]在该实施例中,关联有一项服务的关键字或组合与功能参数、服务之间的映射关系如下:
[0031]
【权利要求】
1.一种基于正则表达式的语义分析方法,其特征在于,包括步骤: 根据关键字组建正则表达式组合,并将组建的组合预先存于数据库中,每个组合关联一项或多项服务; 获取用户语音输入所对应的文本信息,对所述文本信息进行组合的匹配; 执行匹配的组合所关联的服务。
2.根据权利要求1所述的语义分析方法,其特征在于,至少部分组合对应的设有功能参数,根据该功能参数所处的位置从文本信息进行参数提取或者发出提示用户输入所述功能参数的请求。
3.根据权利要求2所述的语义分析方法,其特征在于,至少部分组合还对应有附加参数。
4.根据权利要求1所述的语义分析方法,其特征在于,所述组合按设定的顺序对所述文本信息进行匹配。
5.根据权利要求1、2、3或4所述的语义分析方法,其特征在于,在执行相应的服务之前,还包括确认或进一步选择性确认的步骤。
6.根据权利要求1所述的语义分析方法,其特征在于,所述关联有一项或多项服务的关键字或组合包括以下表格中的任意一项或多项,它们与服务之间的映射关系如下:
7.根据权利要求6所述的语义分析方法,其特征在于,所述设有功能参数的组合,其功能参数在组合中的位置如下:
【文档编号】G06F17/30GK103838713SQ201410120061
【公开日】2014年6月4日 申请日期:2014年3月27日 优先权日:2014年3月27日
【发明者】王峥嵘 申请人:王峥嵘
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1