基于人工智能的字符串处理方法及相关设备技术

技术编号:25989945 阅读:32 留言:0更新日期:2020-10-20 18:58
本申请涉及人工智能技术领域,提供一种基于人工智能的字符串处理方法,所述方法包括:接收输入的多个因子;从区块链中获取与所述多个因子匹配的多个字符串;从所述多个字符串的多个子串中,将所述多个字符串均包含的子串确定为公共子串;通过开发语言确定所述多个字符串中的非公共子串的字符所属的字符类型;将所述非公共子串所属的字符类型映射成与所述字符类型匹配的规则字符串;将所述公共子串与所述规则字符串进行拼接,以构建正则表达式。本发明专利技术可应用于智慧政务场景中,从而推动智慧城市的建设。

【技术实现步骤摘要】
基于人工智能的字符串处理方法及相关设备
本专利技术涉及人工智能
,尤其涉及一种基于人工智能的字符串处理方法及相关设备。
技术介绍
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑,既使用“规律字符串”提取因子。然而,传统的正则表达式都是人为根据文本数据预定义的。这种方式,由于文本数据的缺乏、格式多变,需要经常根据业务需求人为的去重新定义或者更新正则表达式,效率及其低下。因此,如何智能地生成符合要求的正则表达式是一个亟待解决的技术问题。
技术实现思路
鉴于以上内容,有必要提供一种基于人工智能的字符串处理方法及相关设备,能够智能地生成符合要求的正则表达式。本专利技术的第一方面提供一种基于人工智能的字符串处理方法,所述基于人工智能的字符串处理方法包括:接收输入的多个因子,其中,所述因子为需要从文本中提取的字段;从区块链中获取与所述多个因子匹配的多个字符串,其中,每个所述字符串包括多个子串;从所述多个字符串的多个子串中,将所述多个字符串均包含的子串确定为公共子串;通过开发语言确定所述多个字符串中的非公共子串的字符所属的字符类型,其中,所述非公共子串为所述多个子串中不同于所述公共子串的子串;将所述非公共子串所属的字符类型映射成与所述字符类型匹配的规则字符串;将所述公共子串与所述规则字符串进行拼接,以构建正则表达式。在一种可能的实现方式中,所述通过开发语言确定所述多个字符串中的非公共子串的字符所属的字符类型包括:根据所述公共子串,从每个所述字符串中获得非公共子串;按照位置先后顺序,依次通过开发语言判断所有所述非公共子串在每个位置的字符的字符类型;将所有位置的字符类型进行组合,获得所有所述非公共子串的字符所属的的字符类型。在一种可能的实现方式中,所述将所述非公共子串所属的字符类型映射成与所述字符类型匹配的规则字符串包括:获取所述非公共子串在每个位置的字符类型对应的字符标识;针对每个位置的所述字符标识,根据正则语法映射关系,将所述字符标识进行映射,获得每个位置的规则字符;将所有位置的规则字符进行组合,获得规则字符串。在一种可能的实现方式中,所述将所述公共子串与所述规则字符串进行拼接,以构建正则表达式包括:获取所述公共子串在所述多个字符串中的第一位置;获取所述规则字符串对应的非公共子串在所述多个字符串中的第二位置;将所述公共子串与所述规则字符串按照所述第一位置和所述第二位置的衔接关系进行拼接,获得正则表达式。在一种可能的实现方式中,所述基于人工智能的字符串处理方法还包括:获取多篇测试文档以及多个测试因子;使用人工定义的预设正则表达式从所述多篇测试文档中提取第一因子;使用构建的所述正则表达式从所述多篇测试文档中提取第二因子;从所述第一因子和所述第二因子中,确定所述第一因子和所述第二因子均包含的相同因子;根据所相同因子的数量以及所述多个测试因子的数量,计算准确率;若所述准确率高于预设阈值,确定构建的所述正则表达式符合要求。在一种可能的实现方式中,所述基于人工智能的字符串处理方法还包括:若所述准确率低于预设阈值,确定构建的所述正则表达式不符合要求;对构建的所述正则表达式进行优化。在一种可能的实现方式中,所述基于人工智能的字符串处理方法还包括:接收输入的目标文档;将所述目标文档与所述正则表达式进行匹配,以抽取所述目标文档中的目标因子,其中,所述目标因子的字符类型与所述多个因子的字符类型相同。本专利技术的第二方面提供一种字符串处理装置,所述字符串处理装置包括:接收模块,用于接收输入的多个因子,其中,所述因子为需要从文本中提取的字段;获取模块,用于从区块链中获取与所述多个因子匹配的多个字符串,其中,每个所述字符串包括多个子串;确定模块,用于从所述多个字符串的多个子串中,将所述多个字符串均包含的子串确定为公共子串;所述确定模块,还用于通过开发语言确定所述多个字符串中的非公共子串的字符所属的字符类型,其中,所述非公共子串为所述多个子串中不同于所述公共子串的子串;映射模块,用于将所述非公共子串所属的字符类型映射成与所述字符类型匹配的规则字符串;拼接模块,用于将所述公共子串与所述规则字符串进行拼接,以构建正则表达式。本专利技术的第三方面提供一种电子设备,所述电子设备包括处理器和存储器,所述处理器用于执行所述存储器中存储的计算机程序时实现所述的基于人工智能的字符串处理方法。本专利技术的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的基于人工智能的字符串处理方法。在上述技术方案中,不需要人工预定义“规则字符串”,不会因为格式的多变修改“规则字符串”,通过逆向流程,根据输入的多个因子,来自动生成匹配的正则表达式,可扩展性高。附图说明图1是本专利技术公开的一种基于人工智能的字符串处理方法的较佳实施例的流程图。图2是本专利技术公开的一种字符串处理装置的较佳实施例的功能模块图。图3是本专利技术实现基于人工智能的字符串处理方法的较佳实施例的电子设备的结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。需要说明的是,在本专利技术中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本专利技术要求的保护范围之内。所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或本文档来自技高网...

【技术保护点】
1.一种基于人工智能的字符串处理方法,其特征在于,所述基于人工智能的字符串处理方法包括:/n接收输入的多个因子,其中,所述因子为需要从文本中提取的字段;/n从区块链中获取与所述多个因子匹配的多个字符串,其中,每个所述字符串包括多个子串;/n从所述多个字符串的多个子串中,将所述多个字符串均包含的子串确定为公共子串;/n通过开发语言确定所述多个字符串中的非公共子串的字符所属的字符类型,其中,所述非公共子串为所述多个子串中不同于所述公共子串的子串;/n将所述非公共子串所属的字符类型映射成与所述字符类型匹配的规则字符串;/n将所述公共子串与所述规则字符串进行拼接,以构建正则表达式。/n

【技术特征摘要】
1.一种基于人工智能的字符串处理方法,其特征在于,所述基于人工智能的字符串处理方法包括:
接收输入的多个因子,其中,所述因子为需要从文本中提取的字段;
从区块链中获取与所述多个因子匹配的多个字符串,其中,每个所述字符串包括多个子串;
从所述多个字符串的多个子串中,将所述多个字符串均包含的子串确定为公共子串;
通过开发语言确定所述多个字符串中的非公共子串的字符所属的字符类型,其中,所述非公共子串为所述多个子串中不同于所述公共子串的子串;
将所述非公共子串所属的字符类型映射成与所述字符类型匹配的规则字符串;
将所述公共子串与所述规则字符串进行拼接,以构建正则表达式。


2.根据权利要求1所述的基于人工智能的字符串处理方法,其特征在于,所述通过开发语言确定所述多个字符串中的非公共子串的字符所属的字符类型包括:
根据所述公共子串,从每个所述字符串中获得非公共子串;
按照位置先后顺序,依次通过开发语言判断所有所述非公共子串在每个位置的字符的字符类型;
将所有位置的字符类型进行组合,获得所有所述非公共子串的字符所属的的字符类型。


3.根据权利要求1所述的基于人工智能的字符串处理方法,其特征在于,所述将所述非公共子串所属的字符类型映射成与所述字符类型匹配的规则字符串包括:
获取所述非公共子串在每个位置的字符类型对应的字符标识;
针对每个位置的所述字符标识,根据正则语法映射关系,将所述字符标识进行映射,获得每个位置的规则字符;
将所有位置的规则字符进行组合,获得规则字符串。


4.根据权利要求1所述的基于人工智能的字符串处理方法,其特征在于,所述将所述公共子串与所述规则字符串进行拼接,以构建正则表达式包括:
获取所述公共子串在所述多个字符串中的第一位置;
获取所述规则字符串对应的非公共子串在所述多个字符串中的第二位置;
将所述公共子串与所述规则字符串按照所述第一位置和所述第二位置的衔接关系进行拼接,获得正则表达式。


5.根据权利要求1至4中任一项所述的基于人工智能的字符串处理方法,其特征在于,所述基于人工智能的字符串处理方法还包括:
获取多篇测试文档以及多个测试因子;
使用人工定义的预...

【专利技术属性】
技术研发人员:董润华徐国强
申请(专利权)人:深圳壹账通智能科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1