提取短信中的联系人信息的方法及装置技术领域
本发明涉及移动终端技术领域,特别是涉及一种提取短信中的联系人信息
的方法及装置。
背景技术
传统技术中,用户可在移动终端中手动添加联系人。用户可在通信录中手
动新建联系人,然后输入联系人姓名、电话号码以及联系人相关信息并存储。
在联系人添加完成后,接收到该联系人的来电时,可在向用户展示该联系人姓
名,而不是来电的电话号码,从而使用户方便地知晓来电的呼叫者是谁。
传统技术中,用户还可在短信中提取电话号码并新建联系人。用户在接收
到短信后,也可在操作界面中手动输入提取号码的指令,然后在短信的文本信
息中提取出连续的数字作为电话号码。
然而,传统技术中提取短信中的联系人信息的方法,需要用户手动输入提
取号码的指令,使得操作的便利性不足。并且用户浏览短信的过程中,若不小
心忽视了短信的文本内容中的电话号码而忘记保存,会遗漏某些重要的电话号
码,从而造成损失。
发明内容
基于此,有必要提供一种能提高操作的便利性的提取短信中的联系人信息
的方法。
一种提取短信中的联系人信息的方法,包括:
监听短信停止查看事件;
获取所述短信停止查看事件对应的短信,从所述短信中提取联系人信息。
在其中一个实施例中,所述联系人信息包括电话号码、电子邮箱地址、个
人网站地址中的至少一种。
在其中一个实施例中,所述提取到的联系人信息有多个;
所述从所述短信中提取联系人信息的步骤之后还包括:
提示用户存储所述提取到的联系人信息;
获取输入的联系人信息选择指令;
根据所述联系人信息选择指令在所述提取到的联系人信息中获取选择的联
系人;
存储所述选择的联系人。
在其中一个实施例中,所述从所述短信中提取联系人信息的步骤之后还包
括:
判断已存联系人是否包含所述提取到的联系人信息,若未包含,则执行所
述提示用户存储所述提取到的联系人信息的步骤。
在其中一个实施例中,所述从短信中提取联系人信息的步骤之后还包括:
将所述提取到的联系人信息存储到预设的缓存区中;
所述方法还包括:
获取所述预设的缓存区中的联系人信息;
提示用户存储所述从预设的缓存区中获取的联系人信息。
此外,还有必要提供一种能提高操作的便利性的提取短信中的联系人信息
的装置。
一种提取短信中的联系人信息的装置,包括:
事件监听模块,用于监听短信停止查看事件;
信息提取模块,用于获取所述短信停止查看事件对应的短信,从所述短信
中提取联系人信息。
在其中一个实施例中,所述联系人信息包括电话号码、电子邮箱地址、个
人网站地址中的至少一种。
在其中一个实施例中,所述提取到的联系人信息有多个;
所述装置还包括联系人存储模块,用于提示用户存储所述提取到的联系人
信息,获取输入的联系人信息选择指令,根据所述联系人信息选择指令在所述
提取到的联系人信息中获取选择的联系人,存储所述选择的联系人。
在其中一个实施例中,所述装置还包括信息筛选模块,用于在所述提取到
的联系人信息中筛选出不包含在已存联系人中的联系人信息。
在其中一个实施例中,所述装置还包括联系人信息缓存模块,用于将所述
提取到的联系人信息存储到预设的缓存区中;
所述装置还包括统一存储模块,用于获取所述预设的缓存区中的联系人信
息,提示用户存储所述从预设的缓存区中获取的联系人信息。
上述提取短信中的联系人信息的方法和装置,可监听短信停止查看事件,
并在监听到短信停止查看事件后自动提取与短信对应的联系人信息。用户不用
手动输入指令来提取联系人信息,而是通过监听的方式随着短信停止事件的触
发而自动提取联系人信息,使得用户输入的操作次数减少,从而提高了操作的
便利性。
附图说明
图1为一个实施例中提取短信中的联系人信息的方法的流程图;
图2为一个实施例中提取短信中的联系人信息的装置的结构示意图;
图3为另一个实施例中提取短信中的联系人信息的装置的结构示意图。
具体实施方式
在一个实施例中,如图1所示,一种提取短信中的联系人信息的方法,包
括以下步骤:
步骤S102,监听短信停止查看事件。
短信停止查看事件即用户在停止查看短信时触发的事件。例如,用户在点
击关闭短信的按钮,关闭短信窗口或将短信应用放置到后台运行时,即可触发
短信停止查看事件。
在一个实施例中,可通过在短信窗口的关闭事件的处理函数中添加监听函
数来监听短信停止查看事件。
步骤S104,获取短信停止查看事件对应的短信,从短信中提取联系人信息。
在一个实施例中,联系人信息包括电话号码、电子邮箱地址、个人网站地
址中的至少一种。个人网站地址可以是微博地址、博客地址或个人主页地址。
在一个实施例中,从短信中提取联系人信息的步骤可具体为:获取该短信
的发送方号码和/或短信内容中所包含的联系人信息。
在一个实施例中,从短信内容中提取联系人信息的步骤可具体为:遍历文
本内容,获取文本内容中每个字符的ASCII码,根据标点、中文或空格的ASCII
码截取文本内容中连续的字符序列;若获取到的字符序列为数字序列,则判断
数字序列的长度是否大于阈值,若是,则提取该数字序列作为电话号码;若获
取到的字符序列以字符串“http”作为起始,则提取该字符序列作为个人网站地
址;若获取到的字符序列包含字符“”,则提取该字符序列作为电子邮箱地址。
例如,可预先生成一个队列,然后遍历文本内容中的字符,获取遍历字符
的ASCII码,在某个字符A的ASCII码的大小位于48至57之间(即对应的字
符位于0至9之间)时,则将字符A插入到队列的末尾,并开始迭代判断。若
迭代的字符B(即字符A在文本内容中的下一个字符)的ASCII码的大小位于
48至57之间,则将字符B插入到队列的末尾,并继续迭代;否则,判断队列的
长度是否大于阈值,若是,则根据该队列提取数字序列作为提取的电话号码,
若不大于阈值,则重置该队列,移除该队列中的已插入的字符。
进一步的,还可根据预设正则表达式从短息中提取联系人信息。可先根据
标点、中文或空格将短信内容截取成字符序列,然后根据预设的正则表达式判
断截取得到的字符序列是否为联系人信息。预设的正则表达式规范可根据电话
号码、电子邮箱以及个人网站地址的命名规范进行设置。
在一个实施例中,从短信中提取联系人信息的步骤之后还可通过弹出窗口
展示提取到的联系人信息,提示用户存储提取到的联系人信息。可通过弹出窗
口获取用户输入的与提取到的联系人信息相关的信息(如姓名、昵称、分组等),
并根据输入的相关信息和联系人信息新建联系人并存储。
在一个实施例中,提取的联系人信息有多个。从短信中提取联系人信息的
步骤之后还包括:
提示用户存储提取到的联系人信息,获取输入的联系人信息选择指令,根
据联系人信息选择指令在提取到的联系人信息中获取选择的联系人,存储选择
的联系人。
进一步的,存储选择的联系人的步骤可具体为:通过弹出窗口获取用户输
入的选择的联系人的相关信息,根据相关信息与选择的联系人新建联系人并存
储。
在一个实施例中,从短信中提取联系人信息的步骤之后还可判断已存联系
人是否包含提取到的联系人信息,若未包含,则执行提示用户存储提取到的联
系人信息的步骤。
已存联系人即终端中已经存储的联系人的集合。可在已存联系人中查找提
取到的联系人信息,若找到,则可忽略该电话号码;否则,执行提示用户存储
提取到的联系人信息的步骤。
也就是说,若提取到的电话号码已存在于已存联系人中,则可忽略该电话
号码。
在一个实施例中,从短信中提取联系人信息的步骤之后还可将提取到的联
系人信息存储到预设的缓存区中。
还可获取预设的缓存区中的联系人信息,提示用户存储从预设的缓存区中
获取的联系人信息。
将提取到的联系人信息存储到预设的缓存区中的步骤之后可关闭短信窗口
或将短信应用移至后台。也就是说,无需每次触发短息停止查看事件时均提示
用户存储提取到的联系人信息,而是集中起来存储到缓存区中。用户可定期浏
览缓存区,并将缓存区中缓存的前期提取到的联系人信息统一保存。从而不会
对用户频繁地进行提示,从而提高了用户体验。
在一个实施例中,如图2所示,一种提取短信中的联系人信息的装置,包
括事件监听模块102、信息提取模块104,其中:
事件监听模块102,用于监听短信停止查看事件。
短信停止查看事件即用户在停止查看短信时触发的事件。例如,用户在点
击关闭短信的按钮,关闭短信窗口或将短信应用放置到后台运行时,即可触发
短信停止查看事件。
在一个实施例中,事件监听模块102可用于通过在短信窗口的关闭事件的
处理函数中添加监听函数来监听短信停止查看事件。
信息提取模块104,用于获取短信停止查看事件对应的短信,从短信中提取
联系人信息。
在一个实施例中,联系人信息包括电话号码、电子邮箱地址、个人网站地
址中的至少一种。个人网站地址可以是微博地址、博客地址或个人主页地址。
在一个实施例中,信息提取模块104可用于获取该短信的发送方号码和/或
短信内容中所包含的联系人信息。
在一个实施例中,信息提取模块104可用于遍历文本内容,获取文本内容
中每个字符的ASCII码,根据标点、中文或空格的ASCII码截取文本内容中连
续的字符序列;若获取到的字符序列为数字序列,则判断数字序列的长度是否
大于阈值,若是,则提取该数字序列作为电话号码;若获取到的字符序列以字
符串“http”作为起始,则提取该字符序列作为个人网站地址;若获取到的字符
序列包含字符“”,则提取该字符序列作为电子邮箱地址。
例如,信息提取模块104可用于预先生成一个队列,然后遍历文本内容中
的字符,获取遍历字符的ASCII码,在某个字符A的ASCII码的大小位于48
至57之间(即对应的字符位于0至9之间)时,则将字符A插入到队列的末尾,
并开始迭代判断。若迭代的字符B(即字符A在文本内容中的下一个字符)的
ASCII码的大小位于48至57之间,则将字符B插入到队列的末尾,并继续迭
代;否则,判断队列的长度是否大于阈值,若是,则根据该队列提取数字序列
作为提取的电话号码,若不大于阈值,则重置该队列,移除该队列中的已插入
的字符。
进一步的,号码提取模块104还可用于根据预设正则表达式从短息中提取
联系人信息。可先根据标点、中文或空格将短信内容截取成字符序列,然后根
据预设的正则表达式判断截取得到的字符序列是否为联系人信息。预设的正则
表达式规范可根据电话号码、电子邮箱以及个人网站地址的命名规范进行设置。
在一个实施例中,提取的联系人信息有多个。如图3所示,提取短信中的
联系人信息的装置还包括联系人存储模块106,用于提示用户存储提取到的联系
人信息,获取输入的联系人信息选择指令,根据联系人信息选择指令在提取到
的联系人信息中获取选择的联系人,存储选择的联系人。
进一步的,联系人存储模块106可用于通过弹出窗口获取用户输入的选择
的联系人的相关信息(如姓名、昵称、分组等),根据相关信息与选择的联系人
新建联系人并存储。在一个实施例中,如图3所示,提取短信中的联系人信息
的装置还包括信息筛选模块108用于在提取到的联系人信息中筛选出不包含在
已存联系人中的联系人信息。
已存联系人即终端中已经存储的联系人的集合。可在已存联系人中查找提
取到的联系人信息,若找到,则可忽略该电话号码;否则,执行提示用户存储
提取到的联系人信息的步骤。
也就是说,若提取到的电话号码已存在于已存联系人中,则可忽略该电话
号码。
在一个实施例中,如图3所示,提取短信中的联系人信息的装置还包括联
系人信息缓存模块110,用于将提取到的联系人信息存储到预设的缓存区中。提
取短信中的联系人信息的装置还包括统一存储模块112,用于获取预设的缓存区
中的联系人信息,提示用户存储从预设的缓存区中获取的联系人信息。
联系人信息缓存模块110将提取到的联系人信息存储到预设的缓存区中之
后可关闭短信窗口或将短信应用移至后台。也就是说,无需每次触发短息停止
查看事件时均提示用户存储提取到的联系人信息,而是集中起来存储到缓存区
中。用户可定期浏览缓存区,并将缓存区中缓存的前期提取到的联系人信息统
一保存。从而不会对用户频繁地进行提示,从而提高了用户体验。
上述提取短信中的联系人信息的方法和装置,可监听短信停止查看事件,
并在监听到短信停止查看事件后自动提取与短信对应的联系人信息。用户不用
手动输入指令来提取联系人信息,而是通过监听的方式随着短信停止事件的触
发而自动提取联系人信息,使得用户输入的操作次数减少,从而提高了操作的
便利性。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,
但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域
的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和
改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附
权利要求为准。