一种精确寻找手机联系人的方法及装置与流程

文档序号:11879670阅读:411来源:国知局
一种精确寻找手机联系人的方法及装置与流程

本发明属于移动终端技术领域,尤其涉及一种精确寻找手机联系人的方法及装置。



背景技术:

传统的智能终端设备,如手机等一般都可以直接通过通讯录来查找联系人的相关信息,然后进行拨打电话或者发短信等行为。通常的,在手机端进行查找联系人的时候的方式都是,通过在智能终端输入相对应的名称,然后智能终端通过用户输入的字符信息匹配联系人的信息。

随着科技的发展,手机的功能也越来越多,在现在手机中的智能聊天中,经常会出现说一句话就打电话给某个人的情况,但是现有技术不能够很好的从一句话中分析出手机通讯录中的联系人,会出现找到的联系人与我想要的联系人不相同的问题;比如,帮我打电话给张三丰那个人。而通信录中存了张,张三和张三丰,可能会出现找不到或者找到的是张或张三等信息,因此,解决从一句话中准确的分析出手机通讯录中的联系人成为本领域技术人员需要解决的技术问题。



技术实现要素:

为了克服现有技术的不足,本发明的目的之一在于提供一种精确寻找手机联系人的方法,其能准确找到通讯录中的联系人的信息。

本发明的目的之二在于提供一种精确寻找手机联系人的方法,其能准确找到通讯录中的联系人的信息。

本发明的目的之一采用以下技术方案实现:

一种精确寻找手机联系人的方法,包括以下步骤:

S1:接收用户输入的语句;

S2:将该语句以两个字符为一组的方式拆分为多个字符组,并对通讯录内的名称信息与所得字符组进行模糊匹配;

S3:判断是否匹配成功,如果匹配成功,则执行步骤S4;如果匹配失败,则执行步骤S5;

S4:将所有匹配成功的名称信息返回至该语句中进行语句匹配,并对语句匹配成功的名称信息进行显示;

S5:将该语句拆分为多个字符,并对通讯录内的名称信息与所得字符进行模糊匹配;

S6:对所有模糊匹配得到的名称信息进行显示。

优选地,在步骤S1与步骤S2之间还包括以下步骤:

步骤S11:将接收到的语句从全角状态转换为半角状态;

S12:获取通讯录中的名称信息,并将名称信息转换为半角状态。能够进一步提高后期匹配的准确性。

优选地,步骤S2和步骤S5中的模糊匹配的方式为NSPredicate。能够进一步公开模糊匹配的方式。

本发明的目的之二采用以下技术方案实现:

一种精确寻找手机联系人的装置,包括以下模块:

接收模块:接收用户输入的语句;

第一拆分匹配模块:将该语句以两个字符为一组的方式拆分为多个字符组,并对通讯录内的名称信息与所得字符组进行模糊匹配;

判断模块:判断是否匹配成功,如果匹配成功,则执行语句匹配模块;如果匹配失败,则执行第二拆分匹配模块;

语句匹配模块:将所有匹配成功的名称信息返回至该语句中进行语句匹配,并对语句匹配成功的名称信息进行显示;

第二拆分匹配模块:将该语句拆分为多个字符,并对通讯录内的名称信息与所得字符进行模糊匹配;

显示模块:对所有模糊匹配得到的名称信息进行显示。

优选地,在接收模块和第一拆分匹配模块之间还包括以下模块:

第一状态转换模块:将接收到的语句从全角状态转换为半角状态;

第二状态转换模块:获取通讯录中的名称信息,并将名称信息转换为半角状态。能够进一步提高后期匹配的准确性。

优选地,在第一拆分匹配模块和第二拆分匹配模块中的模块匹配的方式为NSPredicate。能够进一步公开模糊匹配的方式。

相比现有技术,本发明的有益效果在于:

本发明通过设置的判断条件能够通过一句话准确的分析出手机通讯录中的联系人,从而提高联系人信息的查询效率。

附图说明

图1为本发明一种精确寻找手机联系人的方法的流程图;

图2为本发明一种精确寻找手机联系人的装置的结构框图。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述:

如图1所示,本发明提供了一种精确寻找手机联系人的方法,包括以下步骤:

S1:接收用户输入的语句;

S11:将接收到的语句从全角状态转换为半角状态;

S12:获取通讯录中的名称信息,并将名称信息转换为半角状态。全角状态转换为半角状态的目的是为了能够使得其能匹配所有的英文名字而不必在意输入英文名称时的大小写状态,例如当用户输入Jack的时候,通过步骤S11能够将输入语句统一转换为jack,通过步骤S12能够将获得的通讯录中的名字信息转换为半角状态,然后再进行后期匹配,这样使得匹配的准确性大大提高;

S2:将该语句以两个字符为一组的方式拆分为多个字符组,并对通讯录内的名称信息与所得字符组进行模糊匹配;所述模块匹配的方式为NSPredicate;在此步骤中,是将一句话拆分为多个字符组,例如:输入的语句为“我想打电话给张三”,通过拆分分为:我想、想打、打个、个电、电话、话给、给张、张三,这些字符组,然后通过通讯录对这些字符组进行模糊匹配;

S3:判断是否匹配成功,如果匹配成功,则执行步骤S4;如果匹配失败,则执行步骤S5;

S4:将所有匹配成功的名称信息返回至该语句中进行语句匹配,并对语句匹配成功的名称信息进行显示;这一步的目的是为了防止匹配到的名称信息不是自己想要的那个名称信息,例如在通讯录里存在张、张三和张三丰三个相似的名称信息,此时想要打电话给张三,通过模糊匹配,可以匹配到张三和张三丰两组名称信息,因为不需要张三丰的信息,所以,需要再对得到的名称信息进行语句匹配,将张三和张三丰放入到输入的语句中进行语句的匹配,经过匹配后,发现只有张三符合匹配,因此只会出现张三的名称信息,而不会出现张三丰,这样防止出现想要打电话给张三,找出的却是张三丰;

S5:将该语句拆分为多个字符,并对通讯录内的名称信息与所得字符进行模糊匹配;所述模块匹配的方式为NSPredicate;NSPredicate即是谓词逻辑,和数据库的SQL语句具有相似性,都是从数据堆中根据条件来进行筛选,可以对两个数组中出现的相同的信息进行匹配,此步骤目的是在S2中找不到对应的信息后,才进行的,在此步骤中,将“我想打电话给张三”拆分为我、想、打、电、话、给、张、三,然后不停的模糊匹配,直至将所有匹配得到的名称信息都找到;

S6:对所有模糊匹配得到的名称信息进行显示,将步骤S5中模糊匹配得到的信息都找到后,将所有匹配到的信息在手机的显示屏处进行显示,然后供用户进行选择。

如图2所示,本发明还提供了一种精确寻找手机联系人的装置,包括以下模块:

接收模块:接收用户输入的语句;

第一状态转换模块:将接收到的语句从全角状态转换为半角状态;

第二状态转换模块:获取通讯录中的名称信息,并将名称信息转换为半角状态;

第一拆分匹配模块:将该语句以两个字符为一组的方式拆分为多个字符组,并对通讯录内的名称信息与所得字符组进行模糊匹配;所述模块匹配的方式为NSPredicate;

判断模块:判断是否匹配成功,如果匹配成功,则执行语句匹配模块;如果匹配失败,则执行第二拆分匹配模块;

语句匹配模块:将所有匹配成功的名称信息返回至该语句中进行语句匹配,并对语句匹配成功的名称信息进行显示;

第二拆分匹配模块:将该语句拆分为多个字符,并对通讯录内的名称信息与所得字符进行模糊匹配;所述模块匹配的方式为NSPredicate;

显示模块:对所有模糊匹配得到的名称信息进行显示。

对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1