CN108536713B - 字符串审核方法、装置及电子设备 - Google Patents

字符串审核方法、装置及电子设备 Download PDF

Info

Publication number
CN108536713B
CN108536713B CN201710127794.1A CN201710127794A CN108536713B CN 108536713 B CN108536713 B CN 108536713B CN 201710127794 A CN201710127794 A CN 201710127794A CN 108536713 B CN108536713 B CN 108536713B
Authority
CN
China
Prior art keywords
character string
matching
audited
sub
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710127794.1A
Other languages
English (en)
Other versions
CN108536713A (zh
Inventor
鲁晨光
田新
马良
裴宇昕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Alibaba China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN201710127794.1A priority Critical patent/CN108536713B/zh
Publication of CN108536713A publication Critical patent/CN108536713A/zh
Application granted granted Critical
Publication of CN108536713B publication Critical patent/CN108536713B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种字符串审核方法、装置及电子设备,所述方法包括:获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;根据所述匹配结果,确定所述待审核字符串的审核结果。所述方法能够减少审核的运算量及时间消耗,提高了审核的效率。

Description

字符串审核方法、装置及电子设备
技术领域
本发明涉及计算机应用领域,具体而言,涉及一种字符串审核方法、装置及电子设备。
背景技术
目前,为了减少编辑的成本,通常会将字符串与通配符结合形成模板,当通配符被关键词替换时,便能生成所需的字符串。若直接将该字符串与预设词集进行匹配来获取审核结果,则运算量很大,审核效率较低。
发明内容
有鉴于此,本发明实施例的目的在于提供一种字符串审核方法、装置及电子设备,以解决上述问题。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种字符串审核方法,所述方法包括:获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;根据所述匹配结果,确定所述待审核字符串的审核结果。
第二方面,本发明实施例提供了一种字符串审核装置,所述装置包括:获取模块,用于获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;匹配模块,用于分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;确定模块,用于根据所述匹配结果,确定所述待审核字符串的审核结果。
第三方面,本发明实施例提供了一种电子设备,所述电子设备包括存储器及处理器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时以使所述处理器执行以下操作:获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;根据所述匹配结果,确定所述待审核字符串的审核结果。
与现有技术相比,本发明实施例提供的一种字符串审核方法、装置及电子设备,通过预先将待审核字符串中由关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成的至少一个子字符串取出,分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果,并根据所述匹配结果,确定所述待审核字符串的审核结果,若匹配失败,则无需再将该待审核字符串与预设词集进行匹配,这种方式能够减少审核的运算量及时间消耗,提高了审核的效率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍, 应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的电子设备的结构框图。
图2是本发明第一实施例提供的一种字符串审核方法的流程图。
图3是本发明第一实施例提供的一种字符串审核方法中的一种步骤S200的流程图。
图4是本发明第一实施例提供的一种字符串审核方法中的另一种步骤S200的流程图。
图5是本发明第一实施例提供的一种字符串审核方法中的步骤S300的流程图。
图6是本发明第一实施例提供的一种字符串审核方法中的步骤S320的流程图。
图7是本发明第二实施例提供的一种字符串审核方法的流程图。
图8是本发明第三实施例提供的一种字符串审核装置的结构框图。
图9是本发明第三实施例提供的一种字符串审核装置中的匹配模块620的结构框图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图1所示,是电子设备100的方框示意图。所述电子设备100可以是用户终端或服务器。所述电子设备100包括存储器101、处理器102以及网络模块103。
存储器101可用于存储软件程序以及模块,如本发明实施例中的字符串审核方法及装置对应的程序指令/模块,处理器102通过运行存储在存储器101内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现本发明实施例中的字符串审核方法。存储器101可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。进一步地,上述存储器101内的软件程序以及模块还可包括:操作系统121以及服务模块122。其中操作系统121,例如可为LINUX、UNIX、WINDOWS,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通讯,从而提供其他软件组件的运行环境。服务模块122运行在操作系统121的基础上,并通过操作系统121的网络服务监听来自网络的请求,根据请求完成相应的数据处理,并返回处理结果给客户端。也就是说,服务模块122用于向客户端提供网络服务。
网络模块103用于接收以及发送网络信号。上述网络信号可包括无线信号或者有线信号。
可以理解,图1所示的结构仅为示意,所述电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
本发明实施例提供的字符串审核方法可以运行于图1所示的电子设备100中。该方法通过预先将待审核字符串中由关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成的至少一个子字符串取出,分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果,并根据所述匹配结果,确定所述待审核字符串的审核结果,若匹配失败,则无需再将该待审核字符串与预设词集进行匹配,这种方式与直接将该字符串与预设词集进行匹配来获取审核结果的方式相比起来,运算量减少,提高了审核的效率。下面对该字符串审核方法进行详细说明。
图2示出了本发明第一实施例提供的字符串审核方法的流程图,请参阅图2,该网页处理方法运行于上述电子设备中,该方法包括:
步骤S200,获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成。
其中,该字符串模板,是由不经常改变的字符串及通配符构成。例如:“北京望京花香鸟语{}免费配送”为字符串模板,其中,“北京望京花香鸟语”及“免费配送”为该字符串模板中不经常改变的字符串,“{}”为通配符。假设关键词为“百合花”,则将字符串模板中的通配符替换为关键词后形成的字符串为:北京望京花香鸟语百合花免费配送。当然,该字符串模板中可以包括一个或多个通配符,关键词也可以是一个或多个。并不局限于此。
作为步骤S200的一种实施方式,若所述字符串模板包括多个通配符,请参阅图3,步骤S200可以包括:
步骤S211,将所述字符串模板中的多个通配符均替换为所述关键词,形成待审核字符串。
例如,“北京望京花香鸟语店庆{}打折,且{}免费配送”为字符串模板,该字符串模板中有两个通配符,关键词为“百合花”。则将这2个通配符均用该关键词替换后,形成待审核字符串:“北京望京花香鸟语店庆百合花打折,且百合花免费配送”。
步骤S212,获取所述待审核字符串中各个所述关键词对应的子字符串。
获取所述待审核字符串中各个所述关键词对应的子字符串的方式很多。可以依次获取该待审核字符串中各个关键词对应的子字符串,也可以是同时获取该待审核字符串中各个关键词对应的子字符串。
子字符串的长度可以根据需求进行设置。优选的,子字符串的长度可以为2。当子字符串的长度取值为2时,可以加快子字符串与预设过滤器匹配的速度,提升字符串审核效率。
作为一种实施方式,所述子字符串包括由所述关键词的第一个字符与所述第一个字符相邻的位于模板中的字符构成的子字符串,或由所述关键词的最后一个字符与所述最后一个字符相邻的位于模板中的字符构成的子字符串。
例如,对于待审核字符串“北京望京花香鸟语店庆百合花打折,且百合花免费配送”,关键词为百合花。依次获取该待审核字符串中各个关键词对应的子字符串,首先找到该待审核字符串中第一次出现关键词“百合花”的位置,此时,取出关键词“百合花”的第一个字符“百”,与该字符“百”相邻且位于模板中的字符为“庆”,将“庆百”取出构成一个子字符串;也可以是取出关键词“百合花”的最后一个字符“花”,与该字符“花”相邻且位于模板中的字符为“打”,将“花打”取出构成一个子字符串;当然,可以将“庆百”及“花打”这两个子字符串均取出,用于与预设过滤器进行匹配。进一步的,找到该待审核字符串中第二次出现关键词“百合花”的位置,此时,取出关键词“百合花”的第一个字符“百”,与该字符“百”相邻且位于模板中的字符为“且”,将“且百”取出构成一个子字符串;也可以是取出关键词“百合花”的最后一个字符“花”,与该字符“花”相邻且位于模板中的字符为“免”,将“花免”取出构成一个子字符串;当然,可以将“且百”及“花免”这两个子字符串均取出,用于与预设过滤器进行匹配。若均取出,则用于与预设过滤器进行匹配的子字符串有4个,分别为:庆百”、“花打”、“且百”及“花免”。
作为步骤S200的另一种实施方式,若所述关键词为多个,请参阅图4,步骤S200可以包括:
步骤S221,依次将各个关键词替换所述待审核字符串中的通配符,获得多个待审核字符串。
例如,“北京望京花香鸟语店庆{}打折”为字符串模板,关键词为“百合花”和“玫瑰花”。将所述字符串模板中的通配符均依次替换为这两个关键词,形成两个待审核字符串:
(1):北京望京花香鸟语店庆百合花打折。
(2):北京望京花香鸟语店庆玫瑰花打折。
步骤S222,分别获取各个所述待审核字符串中的至少一个子字符串。
接上例,此时待审核字符串为两个,分别对上述两个待审核字符串获取子字符串。
例如,对于第一个待审核字符串“北京望京花香鸟语店庆百合花打折”,关键词为百合花。获取该待审核字符串中的至少一个子字符串,首先找到该待审核字符串中的关键词“百合花”,此时,取出关键词“百合花”的第一个字符“百”,与该字符“百”相邻且位于模板中的字符为“庆”,将“庆百”取出构成一个子字符串;也可以是取出关键词“百合花”的最后一个字符“花”,与该字符“花”相邻且位于模板中的字符为“打”,将“花打”取出构成一个子字符串;当然,可以将“庆百”及“花打”这两个子字符串均取出,用于与预设过滤器进行匹配。同理,对另一个待审核字符串“北京望京花香鸟语店庆玫瑰花打折”获取至少一个子字符串,此处不再赘述。
进一步的,该字符串模板中的通配符个数及该关键词的个数均可以是多个。若为多个,则依次将所述字符串模板中的多个通配符均替换为各个所述关键词,形成多个待审核字符串。
例如,“北京望京花香鸟语店庆{}打折,{}免费配送”为字符串模板,关键词为“百合花”和“玫瑰花”。依次将所述字符串模板中的多个通配符均替换为这两个关键词,形成两个待审核字符串:
(1):北京望京花香鸟语店庆百合花打折,百合花免费配送。
(2):北京望京花香鸟语店庆玫瑰花打折,玫瑰花免费配送。
后续获取子字符串的步骤累述,此处不再赘述。
步骤S300,分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果。
作为一种实施方式,请参阅图5,步骤S300可以包括:
步骤S310,分别计算各个所述子字符串的签名。
计算子字符串的签名的实施方式有多种,例如,可以采用哈希算法求出该子字符串的hash值作为子字符串的签名,或者求子字符串的的MD5值作为子字符串的签名等。
作为一种实施方式,可以根据每个所述子字符串中包含的各个字符的编码值,分别计算各个所述子字符串的签名。
进一步的,作为一种实施方式,所述子字符串包括两个字符,将每个所述子字符串中的其中一个字符的编码值左移预设位数获得的值与另一个字符的编码值相加,分别形成各个所述子字符串的签名。
具体的,可以根据下述公式计算子字符串的签名:
子字符串的签名=第一个字符的编码值+第二个字符的编码值左移8位。
可以理解的是,由于子字符串的长度的取值可以有多种,不仅是两个字符,对于多个字符的时候,其根据各个字符的编码值计算子字符串的签名的可变方式很多,例如:若子字符串包含3个字符,则该字符串的签名=第一个字符的编码值+第二个字符的编码值左移8位+第三个字符的编码值。可以理解的是,其它的变形也属于本发明保护的范围,此处不再赘述。
当然,在计算字符串的签名时,也可以无需将其中一个字符的编码值左移预设位数,只是若根据将所述子字符串中的其中一个字符的编码值左移预设位数获得的值与另一个字符的编码值相加这种方式来形成的子字符串的签名,可以减少签名的冲突。
步骤S320,分别将各个所述签名与预设过滤器进行匹配,获得匹配结果。
作为一种实施方式,所述预设过滤器为一个数组,该数组中每个值为预设值的数组元素对应预设词集中的一个词。
其中,预设词集可以是违禁词构成的词集,也可以是敏感词构成的词集,或者根据用户的需求需要审核的词构成的词集。
构建预设过滤器的实施方式也可以有多种。作为一种实施方式,首先新建一个数组,数组大小大于签名最大值,将该数组中每一个元素的值初始化为0。将预设词集中的每个词根据上述方法计算出对应的签名。将该数组中下标为各个预设词集中的词对应签名的元素的值置为预设的值,例如,置为1。
请参阅图6,步骤S320可以包括:
步骤S321,分别判定所述数组中下标为各个所述子字符串的签名的数组元素的值是否为所述预设值。
例如,假设预设值为1,分别判定所述数组中下标为各个所述子字符串的签名的数组元素的值是否1。
步骤S322,若其中任意一个的值为所述预设值,则匹配成功;否则,匹配失败。
若只有一个子字符串,则所述数组中下标为该子字符串的签名的数值元素的值为预设值,则匹配成功。
若各个所述子字符串的签名的数组元素的值均不等于预设值,则匹配失败。例如,若所述数组中下标为各个所述子字符串的签名的数组元素的值若有任何数组元素的值为1,则匹配成功;若均为0,则匹配失败。
可以理解的是,使用数组下标取值的方式来判断配对是否成功,算法复杂度为O(1),预设词集中的词匹配的多模匹配算法使用前缀匹配的方式,算法复杂度为O(n),n为将关键词分别代入字符串模板中构成的待审核字符串的个数,因此,采用这种方式进行匹配比直接将待审核字符串与预设词集中的词进行匹配更高效,使得整体审核效率有较大提升。
步骤S400,根据所述匹配结果,确定所述待审核字符串的审核结果。
若匹配成功,也就是说获取的子字符串中存在与预设词集中的词相匹配的子字符串,则该字符串还需要进一步进行审核;若匹配失败,也就是说获取的子字符串与预设词集中的任一个词都不匹配,则可以认为审核结束,审核结果为通过。
作为一种实施方式,该方法可以运用于竞价广告中,竞价广告是一种采用先审核后发布的广告方式,所有会在搜索结果中展示的广告物料内容,都要先经过违禁词表规则的过滤,以保证物料内容中没有包含违禁信息,不会造成违规风险。在这种实施方式中,该字符串模板可以是广告描述语(即广告创意),该字符串模板中的通配符可以是广告描述语中的创意通配符,将字符串模板中的通配符替换为关键词后形成的待审核字符串即为待审核的广告物料内容,预设词集则为该违禁词集,通过本实施例的方式进行审核能够减少待审核广告内容的审核运算量及时间消耗,提高了审核的效率。
本发明实施例提供的字符串审核方法,通过预先将待审核字符串中由关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成的至少一个子字符串取出,分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果,并根据所述匹配结果,确定所述待审核字符串的审核结果,若匹配失败,则无需再将该待审核字符串与预设词集进行匹配,这种方式能够减少审核的运算量及时间消耗,提高了审核的效率。
图7示出了本发明第二实施例提供的字符串审核方法的流程图,请参阅图7,该网页处理方法运行于上述电子设备中,该方法包括:
步骤S510,将所述字符串模板及所述关键词分别与预设词集进行匹配。
将所述字符串模板与预设词集匹配的实施方式很多。例如,可以依次将该字符串模板与预设词集中的每个词采用字符串匹配算法进行匹配,例如,BM算法,KMP算法等单模匹配算法。进一步的,也可以采用多模匹配算法,例如,WM算法,AC算法等,这种方式通过将预设词集建立预处理结构,例如树形结构,通过该预处理结构匹配而不用遍历预设词集的每个词,能够加快匹配的过程。同理,将关键词与预设词集进行匹配的实施方式类似。
步骤S520,判定是否均未匹配成功。
若是,执行步骤S530;否则,执行步骤S580。
步骤S530,获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成。
步骤S540,分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果。
步骤S530至步骤S540的实施方式与上一实施例中的步骤S200至步骤S300的实施方式类似,此处不再赘述。
步骤S550,判定是否匹配成功。
若否,执行步骤S570;否则,执行步骤S560。
步骤S560,将所述待审核字符串与预设词集进行匹配,确定所述待审核字符串的审核结果。
将所述待审核字符串与预设词集进行匹配的实施方式很多。例如,可以依次将该待审核字符串与预设词集中的每个词采用字符串匹配算法进行匹配,例如,BM算法,KMP算法等,此处不再赘述。
若匹配成功,则审核结束,该待审核字符串的审核结果为不通过;否则,审核结束,所述待审核字符串的审核结果为通过。
步骤S570,审核结束,所述待审核字符串的审核结果为通过。
步骤S580,审核结束,所述待审核字符串的审核结果为不通过。
基于上述实施例的方法,将预设词集中的词设置为200个违禁词,若直接将待审核字符串与该预设词集中的词进行匹配,则需要审核配对数为2737410,消耗时间为5937ms;若先基于使用数组下标取值的方式来配对,再采用将待审核字符串与该预设词集中的词进行匹配的方式,则需要审核配对数为4610,消耗时间为627ms。可以发现,先基于使用数组下标取值的方式来配对,能够直接通过了99.83%的配对审核,只有0.17%的配对需要进行违禁词匹配,整体审核效率提升了近10倍。
本发明实施例提供的字符串审核方法,通过预先将待审核字符串中由关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成的至少一个子字符串取出,分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果,并根据所述匹配结果,确定所述待审核字符串的审核结果,若匹配失败,则无需再将该待审核字符串与预设词集进行匹配,这种方式能够减少审核的运算量及时间消耗,提高了审核的效率。
请参阅图8,是本发明第三实施例提供的字符串审核装置600的功能模块示意图。所述字符串审核装置600包括获取模块610,匹配模块620,确定模块630。
获取模块610,用于获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成。
作为一种实施方式,所述子字符串包括由所述关键词的第一个字符与所述第一个字符相邻的位于模板中的字符构成的子字符串,或由所述关键词的最后一个字符与所述最后一个字符相邻的位于模板中的字符构成的子字符串。
作为一种实施方式,所述模板包括多个通配符,所述获取模块610具体用于将所述模板中的多个通配符均替换为所述关键词,形成待审核字符串;获取所述待审核字符串中各个所述关键词对应的子字符串。
作为另一种实施方式,所述关键词为多个,所述获取模块610具体用于依次将各个关键词替换所述待审核字符串中的通配符,获得多个待审核字符串;分别获取各个所述待审核字符串中的至少一个子字符串。
匹配模块620,用于分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果。
请参阅图9,作为一种实施方式,所述匹配模块620包括计算子模块621及匹配子模块622。
所述计算子模块621,用于分别计算各个所述子字符串的签名。
作为一种实施方式,所述计算子模块621,具体用于根据每个所述子字符串中包含的各个字符的编码值,分别计算各个所述子字符串的签名。
作为一种具体的实施方式,所述子字符串包括两个字符,所述计算子模块621,具体用于将每个所述子字符串中的其中一个字符的编码值左移预设位数获得的值与另一个字符的编码值相加,分别形成各个所述子字符串的签名。
所述匹配子模块622,用于分别将各个所述签名与预设过滤器进行匹配,获得匹配结果。
作为一种实施方式,所述预设过滤器为一个数组,该数组中每个值为预设值的数组元素对应预设词集中的一个词,所述匹配子模块622,用于分别判定所述数组中下标为各个所述子字符串的签名的数组元素的值是否为所述预设值;若其中任意一个的值为所述预设值,则匹配成功;否则,匹配失败。
确定模块630,用于根据所述匹配结果,确定所述待审核字符串的审核结果。
作为一种实施方式,所述确定模块630具体用于若匹配失败,则所述待审核字符串的审核结果为通过;若匹配成功,则将所述待审核字符串与预设词集进行匹配,确定所述待审核字符串的审核结果。
作为一种实施方式,所述装置还包括处理模块640,用于在所述获取待审核字符串中的至少一个子字符串之前,将所述字符串模板及所述关键词分别与预设词集进行匹配。
以上各模块可以是由软件代码实现,此时,上述的各模块可存储于电子设备的存储器101内。以上各模块同样可以由硬件例如集成电路芯片实现。
本发明第四实施例提供了一种电子设备,所述电子设备包括存储器及处理器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时以使所述处理器执行以下操作:
获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;
分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;
根据所述匹配结果,确定所述待审核字符串的审核结果。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的字符串审核装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第三等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (15)

1.一种字符串审核方法,其特征在于,所述方法包括:
获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;
分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;
根据所述匹配结果,确定所述待审核字符串的审核结果;
所述分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果,包括:
分别计算各个所述子字符串的签名;
分别将各个所述签名与预设过滤器进行匹配,获得匹配结果;
所述预设过滤器为一个数组,其中,通过将预设词集中的每个词根据相同签名计算方法计算出对应的签名,并将该数组中下标为各个预设词集中的词对应签名的数组元素的值置为预设值,使得该数组中每个值为预设值的数组元素对应预设词集中的一个词;
所述分别计算各个所述子字符串的签名,包括:
根据每个所述子字符串中包含的各个字符的编码值,分别计算各个所述子字符串的签名;
所述子字符串包括两个字符,所述根据每个所述子字符串中包含的各个字符的编码值,分别计算各个所述子字符串的签名,包括:
将每个所述子字符串中的其中一个字符的编码值左移预设位数获得的值与另一个字符的编码值相加,分别形成各个所述子字符串的签名。
2.根据权利要求1中所述的方法,其特征在于,所述分别将各个所述签名与预设过滤器进行匹配,获得匹配结果,包括:
分别判定所述数组中下标为各个所述子字符串的签名的数组元素的值是否为所述预设值;
若其中任意一个的值为所述预设值,则匹配成功;否则,匹配失败。
3.根据权利要求1所述的方法,其特征在于,根据所述匹配结果,确定所述待审核字符串的审核结果,包括:
若匹配失败,则所述待审核字符串的审核结果为通过;
若匹配成功,则将所述待审核字符串与预设词集进行匹配,确定所述待审核字符串的审核结果。
4.根据权利要求1所述的方法,其特征在于,在所述获取待审核字符串中的至少一个子字符串之前,所述方法还包括:
将所述字符串模板及所述关键词分别与预设词集进行匹配。
5.根据权利要求1至2中任一项所述的方法,其特征在于,所述子字符串包括由所述关键词的第一个字符与所述第一个字符相邻的位于模板中的字符构成的子字符串,或由所述关键词的最后一个字符与所述最后一个字符相邻的位于模板中的字符构成的子字符串。
6.根据权利要求1至2中任一项所述的方法,其特征在于,所述字符串模板包括多个通配符,所述获取待审核字符串中的至少一个子字符串,包括:
将所述字符串模板中的多个通配符均替换为所述关键词,形成待审核字符串;
获取所述待审核字符串中各个所述关键词对应的子字符串。
7.根据权利要求1至2中任一项所述的方法,其特征在于,所述关键词为多个,所述获取待审核字符串中的至少一个子字符串,包括:
依次将各个关键词替换所述待审核字符串中的通配符,获得多个待审核字符串;
分别获取各个所述待审核字符串中的至少一个子字符串。
8.一种字符串审核装置,其特征在于,所述装置包括:
获取模块,用于获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;
匹配模块,用于分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;
确定模块,用于根据所述匹配结果,确定所述待审核字符串的审核结果;
所述匹配模块包括计算子模块及匹配子模块,
所述计算子模块,用于分别计算各个所述子字符串的签名;
所述匹配子模块,用于分别将各个所述签名与预设过滤器进行匹配,获得匹配结果;
所述预设过滤器为一个数组,其中,通过将预设词集中的每个词根据相同签名计算方法计算出对应的签名,并将该数组中下标为各个预设词集中的词对应签名的数组元素的值置为预设值,使得该数组中每个值为预设值的数组元素对应预设词集中的一个词;
所述计算子模块具体用于根据每个所述子字符串中包含的各个字符的编码值,分别计算各个所述子字符串的签名;
所述子字符串包括两个字符,所述计算子模块具体用于将每个所述子字符串中的其中一个字符的编码值左移预设位数获得的值与另一个字符的编码值相加,分别形成各个所述子字符串的签名。
9.根据权利要求8所述的装置,其特征在于,所述匹配子模块用于分别判定所述数组中下标为各个所述子字符串的签名的数组元素的值是否为所述预设值;若其中任意一个的值为所述预设值,则匹配成功;否则,匹配失败。
10.根据权利要求8所述的装置,其特征在于,所述确定模块具体用于若匹配失败,则所述待审核字符串的审核结果为通过;若匹配成功,则将所述待审核字符串与预设词集进行匹配,确定所述待审核字符串的审核结果。
11.根据权利要求8所述的装置,其特征在于,所述装置还包括处理模块,用于在所述获取待审核字符串中的至少一个子字符串之前,将所述字符串模板及所述关键词分别与预设词集进行匹配。
12.根据权利要求8至9中任一项所述的装置,其特征在于,所述子字符串包括由所述关键词的第一个字符与所述第一个字符相邻的位于模板中的字符构成的子字符串,或由所述关键词的最后一个字符与所述最后一个字符相邻的位于模板中的字符构成的子字符串。
13.根据权利要求8至9中任一项所述的装置,其特征在于,所述字符串模板包括多个通配符,所述获取模块具体用于将所述字符串模板中的多个通配符均替换为所述关键词,形成待审核字符串;获取所述待审核字符串中各个所述关键词对应的子字符串。
14.根据权利要求8至9中任一项所述的装置,其特征在于,所述关键词为多个,所述获取模块具体用于依次将各个关键词替换所述待审核字符串中的通配符,获得多个待审核字符串;分别获取各个所述待审核字符串中的至少一个子字符串。
15.一种电子设备,其特征在于,所述电子设备包括存储器及处理器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时以使所述处理器执行以下操作:
获取待审核字符串中的至少一个子字符串,所述待审核字符串是将字符串模板中的通配符替换为关键词后形成的字符串,所述子字符串由所述关键词中的至少部分字符及与其相邻的位于模板中的部分字符构成;
分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果;
根据所述匹配结果,确定所述待审核字符串的审核结果;
所述分别将各个所述子字符串与预设过滤器进行匹配,获得匹配结果,包括:分别计算各个所述子字符串的签名;分别将各个所述签名与预设过滤器进行匹配,获得匹配结果;
所述预设过滤器为一个数组,其中,通过将预设词集中的每个词根据相同签名计算方法计算出对应的签名,并将该数组中下标为各个预设词集中的词对应签名的数组元素的值置为预设值,使得该数组中每个值为预设值的数组元素对应预设词集中的一个词;
所述分别计算各个所述子字符串的签名,包括:根据每个所述子字符串中包含的各个字符的编码值,分别计算各个所述子字符串的签名;
所述子字符串包括两个字符,所述根据每个所述子字符串中包含的各个字符的编码值,分别计算各个所述子字符串的签名,包括:
将每个所述子字符串中的其中一个字符的编码值左移预设位数获得的值与另一个字符的编码值相加,分别形成各个所述子字符串的签名。
CN201710127794.1A 2017-03-03 2017-03-03 字符串审核方法、装置及电子设备 Active CN108536713B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710127794.1A CN108536713B (zh) 2017-03-03 2017-03-03 字符串审核方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710127794.1A CN108536713B (zh) 2017-03-03 2017-03-03 字符串审核方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN108536713A CN108536713A (zh) 2018-09-14
CN108536713B true CN108536713B (zh) 2021-05-18

Family

ID=63489661

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710127794.1A Active CN108536713B (zh) 2017-03-03 2017-03-03 字符串审核方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN108536713B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110286924A (zh) * 2019-06-04 2019-09-27 广州汇量信息科技有限公司 生成及更新移动程序化广告创意代码的方法及系统
CN112364642B (zh) * 2019-07-23 2024-04-02 马上消费金融股份有限公司 一种文本处理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783838A (zh) * 2005-10-21 2006-06-07 清华大学 基于有状态过滤引擎的高速分组检测方法
CN101807184A (zh) * 2009-02-16 2010-08-18 阿尔卡特朗讯 用于检索包含通配符的字符串的方法和系统
US8375051B2 (en) * 2008-01-21 2013-02-12 International Business Machines Corporation Apparatus for controlling subscriptions
CN103164454A (zh) * 2011-12-15 2013-06-19 百度在线网络技术(北京)有限公司 关键词分组方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783838A (zh) * 2005-10-21 2006-06-07 清华大学 基于有状态过滤引擎的高速分组检测方法
US8375051B2 (en) * 2008-01-21 2013-02-12 International Business Machines Corporation Apparatus for controlling subscriptions
CN101807184A (zh) * 2009-02-16 2010-08-18 阿尔卡特朗讯 用于检索包含通配符的字符串的方法和系统
CN103164454A (zh) * 2011-12-15 2013-06-19 百度在线网络技术(北京)有限公司 关键词分组方法及系统

Also Published As

Publication number Publication date
CN108536713A (zh) 2018-09-14

Similar Documents

Publication Publication Date Title
KR102170929B1 (ko) 사용자 키워드 추출장치, 방법 및 컴퓨터 판독 가능한 저장매체
US11157956B2 (en) Application recommendation method and server
CN110199276B (zh) 用于搜索的方法、系统和介质
US9310879B2 (en) Methods and systems for displaying web pages based on a user-specific browser history analysis
US20190019058A1 (en) System and method for detecting homoglyph attacks with a siamese convolutional neural network
CN104866478B (zh) 恶意文本的检测识别方法及装置
WO2016201819A1 (zh) 检测恶意文件的方法和装置
CA2869888C (en) Discovering spam merchants using product feed similarity
US20220083772A1 (en) Identifying matching fonts utilizing deep learning
US11860955B2 (en) Method and system for providing alternative result for an online search previously with no result
CN113283238B (zh) 文本数据处理的方法和装置、电子设备和存储介质
CN108536713B (zh) 字符串审核方法、装置及电子设备
CN108664501B (zh) 广告审核方法、装置及服务器
CN104021202A (zh) 一种知识共享平台的词条处理装置和方法
JP6777612B2 (ja) コンピュータシステムにおけるデータ損失を防止するためのシステム及び方法
CN113626704A (zh) 基于word2vec模型的推荐信息方法、装置及设备
JP2007122398A (ja) フラグメントの同一性判定方法およびコンピュータプログラム
CN110009056B (zh) 一种社交账号的分类方法及分类装置
CN108804917B (zh) 一种文件检测方法、装置、电子设备及存储介质
JP6680472B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
CN111310016B (zh) 标签挖掘方法、装置、服务器和存储介质
KR102552351B1 (ko) 광고 방법 및 장치
CN114386078B (zh) 一种基于bim的建设项目电子档案管理方法及装置
CN108388480B (zh) 短串相关性校验方法和装置
US20240020476A1 (en) Determining linked spam content

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200528

Address after: 310051 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: Alibaba (China) Co.,Ltd.

Address before: 510000 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 13 layer self unit 01 (only for office use)

Applicant before: GUANGZHOU SHENMA MOBILE INFORMATION TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant