CN108182234A - 正则表达式筛选方法和装置 - Google Patents
正则表达式筛选方法和装置 Download PDFInfo
- Publication number
- CN108182234A CN108182234A CN201711446396.2A CN201711446396A CN108182234A CN 108182234 A CN108182234 A CN 108182234A CN 201711446396 A CN201711446396 A CN 201711446396A CN 108182234 A CN108182234 A CN 108182234A
- Authority
- CN
- China
- Prior art keywords
- regular expression
- model
- corpus
- language material
- matching
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
公开了一种正则表达式筛选方法和装置,所述方法包括:获取待筛选的正则表达式和语料集,所述语料集中包括至少一条语料;将语料集中所有语料与所述正则表达式进行匹配,并统计相匹配的语料数量,计算所述相匹配的语料数量占所述语料集中的语料总数的比例,和/或,匹配时长,所述匹配时长为所述正则表达式匹配语料集中的所有语料所用的时间;如果所述比例小于等于预设比例,或者所述匹配时长大于等于预设时长,或者所述比例或所述匹配时长中的至少一个达到预设条件,则确定所述正则表达式需要优化。本方法能够从庞大的语言模型中快速地筛选出需要优化的正则表达式,为优化大型语言模型中的正则表达式提供了便利,提高了筛选效率。
Description
技术领域
本申请涉及文本挖掘技术领域,用于测试语义模型的性能损耗和正则表达式的匹配时间,并从庞大的模型中,定位到改善模型所需要优化的正则表达式,具体地涉及了一种正则表达式筛选方法和装置。
背景技术
在计算机科学中,正则表达式,又称规则表达式(Regular Expression,在代码中常简写为regex、regexp或RE)是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。
正则表达式匹配是一种常用的文本挖掘处理方式,基于语言规则建立正则表达式,能够实现信息抽取、文本分类等功能。一般地,为了方便搜索和查找,将为实现同一目的的正则表达式归纳为一个集合,每个集合可以称为一个模型,当模型体积过大或正则表达式建立不合理时,就需要对模型中的表达式进行优化,即筛选出不合格的正则表达式,所以,如何在庞大的模型中找到需要优化的正则表达式就成为一个至关重要的问题。
发明内容
本申请提供了正则表达式筛选方法和装置,以快速地查找到需要优化的正则表达式、提高筛选效率。
第一方面,本申请提供了一种正则表达式筛选方法,该方法包括:
获取待筛选的正则表达式和语料集,所述语料集中包括至少一条语料;
将所述语料集中所有语料与所述正则表达式进行匹配,并统计相匹配的语料数量,计算所述相匹配的语料数量占所述语料集中的语料总数的比例,和/或,匹配时长,所述匹配时长为所述正则表达式匹配所述语料集中的所有语料所用的时间;
如果所述比例小于等于预设比例,或者所述匹配时长大于等于预设时长,或者所述比例或所述匹配时长中的至少一个达到预设条件,则确定所述正则表达式需要优化。
结合第一方面,在第一方面的一种实现方式中,将所述语料集中的所有语料与所述正则表达式进行匹配,包括:确定所述正则表达式所对应的字符规则;检测所述语料集中的每条语料是否符合所述字符规则;如果是,则确定所述当前语料与所述正则表达式相匹配;如果否,则确定所述当前语料与所述正则表达式不相匹配。所述字符规则可根据待筛选的正则表达式进行设置。
结合第一方面,在第一方面的另一种实现方式中,所述获取待筛选的正则表达式,包括:获取用户输入的模型ID;根据所述模型ID在数据库中查找所述待筛选的正则表达式所属的第一模型,每个所述模型ID唯一对应一个正则表达式模型;从所述第一模型中确定所述待筛选的正则表达式。
结合第一方面,在第一方面的又一种实现方式中,所述第一模型中包括至少一个正则表达式,所述方法还包括:对所述第一模型中的至少一个正则表达式进行筛选,统计其中需要优化的正则表达式,以及,将所述需要优化的正则表达式从所述第一模型中剔除。
结合第一方面,在第一方面的又一种实现方式中,所述方法还包括:将对所述待筛选的正则表达式的筛选结果通过图形化界面和应用程序编程接口API显示。
第二方面,本申请还提供了一种正则表达式筛选装置,所述装置包括:
获取单元,用于获取待筛选的正则表达式和语料集,所述语料集中包括至少一条语料;
处理单元,用于将所述语料集中所有语料与所述正则表达式进行匹配,并统计相匹配的语料数量,计算所述相匹配的语料数量占所述语料集中的语料总数的比例,和/或,匹配时长,所述匹配时长为所述正则表达式匹配所述语料集中的所有语料所用的时间;如果所述比例小于等于预设比例,或者所述匹配时长大于等于预设时长,或者所述比例或所述匹配时长中的至少一个达到预设条件,则确定所述正则表达式需要优化。
结合第二方面,在第二方面的一种实现方式中,所述处理单元,具体用于确定所述正则表达式所对应的字符规则,检测所述语料集中的每条语料是否符合所述字符规则;如果是,则确定所述当前语料与所述正则表达式相匹配;如果否,确定所述当前语料与所述正则表达式不相匹配。
结合第二方面,在第二方面的另一种实现方式中,所述获取单元,具体用于获取用户输入的模型ID;
所述处理单元,具体用于根据所述模型ID在数据库中查找所述待筛选的正则表达式所属的第一模型,每个所述模型ID唯一对应一个正则表达式模型;从所述第一模型中确定所述待筛选的正则表达式。
结合第二方面,在第二方面的又一种实现方式中,所述第一模型中包括至少一个正则表达式,所述处理单元,还用于对所述第一模型中的至少一个正则表达式进行筛选,统计其中需要优化的正则表达式,以及,将所述需要优化的正则表达式从所述第一模型中剔除。
结合第二方面,在第二方面的又一种实现方式中,所述装置还包括输出单元,所述输出单元,用于输出并显示对所述待筛选的正则表达式的筛选结果,所述输出方式包括图形化界面和API接口显示。
第三方面,本申请还提供了一种检测设备,用于对正则表达式进行筛选,所述检测设备包括前述第二方面中的正则表达式筛选装置。进一步地,该检测设备包括:收发器、处理器和存储器,所述处理器可以执行所述存储器中所存储的程序或指令,从而实现以第一方面各种实现方式所述的正则表达式筛选方法。
第四方面,本申请还提供了一种存储介质,该计算机存储介质可存储有程序,该程序执行时可实现包括本申请提供的正则表达式筛选方法各实施例中的部分或全部步骤。
本申请提供的一种正则表达式筛选方法和装置,通过统计和比较相匹配的语料占语料总数的比例,或匹配时长,进而能够从庞大的语言模型中快速地筛选出需要优化的正则表达式,为优化大型语言模型中的正则表达式提供了便利。
此外,本申请的技术方案中通过正则表达式的性能和匹配结果,能够得出检测模型的执行时间和性能损耗,从而为提高模型分析效率指明了方向。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种正则表达式筛选方法的流程示意图;
图2为本申请实施例提供的另一种正则表达式筛选方法的流程示意图;
图3为本申请实施例提供的一种根据比例筛选正则表达式的方法流程图;
图4为本申请实施例提供的一种根据匹配时长筛选正则表达式的方法流程图;
图5为本申请实施例提供的一种正则表达式筛选装置的结构示意图;
图6为本申请实施例提供的一种网络设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中的技术方案作进一步详细的说明。
本申请的实施例提供了一种正则表达式筛选方法,用于在庞大的语言模型中,快速地筛选出改善模型所需要优化的正则表达式,进而对这些需要优化的正则表达式进行处理,从而提高模型的性能,避免有的正则表达式造成回溯、导致计算量大。
其中,本实施例所述的正则表达式是指,在计算机科学中,一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式(规则)的文本内容。
可选的,所述正则表达式又称规则表达式(英文:Regular Expression,在代码中常简写为regex、regexp或RE)。
所述模型中包括至少一个正则表达式,或者为正则表达式的集合。例如,它可以是一个分类模型。比如需求是对新闻文本进行分类,则会根据不同的新闻类型来添加正则表达式。进一步地,在娱乐新闻分类下添加能够匹配到娱乐新闻内容的正则表达式、科技新闻分类下添加能匹配到科技新闻的正则表达式,以此最终得到若干个对应着各个新闻种类的小分类集合,最后,将囊括了所有小分类集合的新闻分类表达式形成一个大集合,并将其称之为“新闻分类模型”。
可选的,所述模型中的所有正则表达式按照一定顺序排列,且每个所述模型对应一个模型ID,用于方便在数据库中进行查找和搜索。
实施例一
参见图1,本实施例提供的一种正则表达式筛选方法的流程图,该方法包括以下步骤:
步骤101:获取待筛选的正则表达式和语料集,所述语料集中包括至少一条语料。
其中,所述获取待筛选的正则表达式,包括:获取用户输入的模型ID;根据所述模型ID在数据库中查找所述待筛选的正则表达式所属的第一模型,每个所述模型ID唯一对应一个正则表达式模型;从所述第一模型中确定所述待筛选的正则表达式。
所述语料集可以通过SQL语句和语料库的ID获得。
步骤102:将所述语料集中所有语料与所述正则表达式进行匹配,并统计相匹配的语料数量,计算所述相匹配的语料数量占所述语料集中的语料总数的比例,和/或,匹配时长,所述匹配时长为所述正则表达式匹配所述语料集中的所有语料所用的时间。
其中,所述相匹配是指:待匹配的语料符合正则表达式字符规则的语料文本。
进一步地,如图2所示,步骤102中将所述语料集中的所有语料与所述正则表达式进行匹配,包括:
步骤1021:确定所述正则表达式所对应的字符规则;
步骤1022:检测所述语料集中的每条语料是否符合所述字符规则;
步骤1023:如果是,则确定所述当前语料与所述正则表达式相匹配;如果否,则确定所述当前语料与所述正则表达式不相匹配。
在统计相匹配的语料数量之后,所述方法还包括:
步骤103:如果所述比例小于等于预设比例,或者所述匹配时长大于等于预设时长,或者所述比例或所述匹配时长中的至少一个达到预设条件,则确定所述正则表达式需要优化。否则,则说明该正则表达式不需要优化。
所述达到预设条件是指,所述比例小于等于预设比例,所述匹配时长超过预设时长。
所述方法还包括:
对所述第一模型中的至少一个正则表达式进行筛选,统计其中需要优化的正则表达式,以及,将所述需要优化的正则表达式从所述第一模型中剔除或优化,具体的在本实施例中,可以将无匹配到语料或匹配率低的正则表达式直接删除,将匹配时长较长的正则表达式删除或提示用户修改表达式中匹配条件进行调优,从而保证第一模型中的所有正则表达式都满足要求,具有较好的匹配度。
可选的,所述方法还包括:将对所述待筛选的正则表达式的筛选结果通过图形化界面和应用程序编程接口(Application Programming Interface,API)显示,进而使得用户可以根据显示的内容对筛选结果进行修改和剔除。
本申请提供的一种正则表达式筛选方法和装置,通过统计和比较相匹配的语料占语料总数的比例,或匹配时长,进而能够从庞大的语言模型中快速地筛选出需要优化的正则表达式,为优化大型语言模型中的正则表达式提供了便利。
此外,本申请的技术方案中通过正则表达式的性能和匹配结果,能够得出检测模型的执行时间和性能损耗,从而为提高模型分析效率指明了方向。
实施例二
在一个具体的实施例中,以计算语料占比为例,本申请提供的正则表达式筛选方法如图3所示,具体过程如下:
步骤301:获取第一正则表达式和待匹配的语料集,所述语料集中包括至少一个语料,例如,包括100条语料。
步骤302:将该第一正则表达式与所述语料集中所有的语料进行匹配,并统计相匹配的语料数量。
例如,第一正则表达式为:(比赛|主场)*(战胜|不敌|击败|超过|超越|惜败)
其中,该正则表达式所制定的字符规则为:“比赛”或“主场”后面连接“战胜”、“不敌”、“击败”、“超过”、“超越”、“惜败”中的任意一种,且前面括号里的字符串“比赛|主场”与后面括号内的字符串“战胜|不敌|击败|超过|超越|惜败”之间可以存在若干个字符或者不存在字符。
所以,在语料集中按照上述制定的字符规则,可以匹配到的语料包括以下:
语料1:…阿根廷主场惜败英格兰…
语料2:…李宗伟在尤伯杯世界羽毛球男单比赛中击败了世界排名第一的林丹…
语料3:…在2017/18赛季英格兰联赛杯第3轮比赛中,利物浦客场0比2不敌莱斯特城,…
其中,语料1中相匹配的字符为“主场惜败”、语料2中相匹配的字符为“比赛中击败”、语料3中相匹配的字符为“比赛中,利物浦客场0比2不敌”。
步骤303:计算所述相匹配的语料数量占语料集中所有语料的比例。
例如,对语料集中的1000语料逐一进行匹配,得到其中相匹配的语料为300条,计算相匹配的语料占语料总数的比例为:300/1000*100%=30%。
步骤304:将计算的比例与预设比例进行比较,判断该计算的比例是否小于等于预设比例。
步骤305:如果小于等于所述预设比例,则确定该第一正则表达式需要优化,因为在语料集中能够相匹配的语料数量较少。
如果大于所述预设比例,则该第一正则表达式不需要优化,符合匹配数量的要求。
可选的,在进行匹配之前,所述方法还包括:获取第一正则表达式和语料集的步骤。
具体地,获取第一正则表达式的过程包括:通过用户输入的模型ID确定其对应的模型,例如,第一模型,然后再根据该第一模型的模型ID通过SQL语句从数据库中提取该第一模型中包含的所有正则表达式。
将第一模型中的所有正则表达式均与语料集中的所有语料进行匹配,计算并筛选出不合格的正则表达式。例如,在1000条语料的语料集中,第一正则表达式相匹配的比例为30%,第二正则表达式相匹配的比例为55%,第三正则表达式相匹配的比例为70%,假设预设比例为50%;则第一正则表达式的比例低于50%,需要优化;第二和第三正则表达式超过预设比例,不需要进行优化,符合要求。
所述方法还包括,步骤306:将需要优化的正则表达式,例如第一正则表达式从第一模型中剔除,以使剩余的第一模型中的语料都是符合要求,即保证第一模型中剩余都是匹配度较高的正则表达式,提高第一模型的质量。
可选的,将筛选的结果通过图形化界面或者API接口展示给用户。
此外,本申请中获取语料集的方法包括:在数据库中,需要分析的语料存在于内容(英文:content)字段,那么用户可以通过输入结构化查询语言(Structured QueryLanguage,SQL)语句,调出content字段的内容,以使用户能够从数据库中迅速地提取语料。
表1表示一种通过SQL语句从数据库中调取语料集或语料库(英文:Corpus),其中,每个语料集或语料库对应一个文本集合,当有多个文本集合时,形成的多个语料集或语料库可称为语料库集合(英文:Corpora)。
表1
用户可以通过SQL语句,例如“SELECT CONTENT FROM corpus”,即从corpus表中提取CONTENT所列下的内容,来从数据库中找到并调出所需要进行匹配的语料。
此外,本实施例中还可以通过其它方式获取语料和正则表达式,本申请对此不予限制。
本实施例中,通过计算相匹配的语料占语料集总数的比例,能够快速地筛选出语料占比较少的正则表达式,从而为优化大型语言模型中的正则表达式提供了便利,能够从模型中快速地提取出需要进行优化的正则表达式,提高了筛选效率。
实施例三
本实施例提供的方法是根据匹配时长来筛选需要进行优化的正则表达式,具体地,如图4所示,方法具体包括:
步骤401:获取第二模型和一个语料集,所述第二模型中包括至少一个正则表达式,所述语料集中包括至少一条语料。
其中,所述第二模型与前述实施例中的第一模型可以相同,也可以不同,本申请对此不做限制。
步骤402:将所述第二模型中的一个正则表达式与所述语料集中的每个语料进行匹配,并记录匹配时长,所述匹配时长为一个正则表达式匹配语料集中的所有语料所对应的时间。
例如,语料集中包括1000条语料,第一正则表达式匹配语料1耗时t1,匹配语料2耗时为t2,……,匹配第1000条语料耗时为t1000,则统计的匹配时长为t(正则表达式1)=t1+t2+……+t1000.
步骤403:判断所述匹配时长是否大于等于预设时长;
步骤404:如果是,即t超过预设时长,则确定该正则表达式需要进行优化。否则,不需要优化。
所述预设时长T可根据每个正则表达式的特征来确定,且每个正则表达式对应一个匹配的预设时长,每个所述匹配时长可以通过预先设定来生成。
其中,步骤402中相匹配的过程与实施例一和实施例二相同,参见上述实施例的描述,不再赘述。
所述方法还包括:将第二模型中的所有正则表达式都按照步骤402至步骤404的时长匹配的方法来确定其是否需要进行优化,并统计出所有需要优化的正则表达式,将这些正则表达式从第二模型中剔除。
另外,所述方法还包括:将筛选的结果通过图形化界面,或者API接口传输展示给用户,使得用户可以自行根据需要正则表达式进行优化和处理。
本实施例中,用户可以根据匹配时长筛选出容易引起回溯的正则表达式,因为,会发生回溯的正则表达式一般具有较长匹配用时的特性,进而通过对正则表达式匹配时长的筛选,能够确定模型中引起回溯次数较多的正则表达式,并对这些正则表达式做进一步的处理,比如,删除或者优化等,从而达到优化模型质量的目的。
实施例四
本实施例中提供的正则表达式筛选方法结合上述实施例二和实施例三的方法过程,需要根据相匹配的语料占语料总数的比例和匹配时长两个特征值来确定,具体地,获取相匹配的语料数量,计算占比,以及一条正则表达式与语料集中的所有语料进行匹配的匹配时长均与前述实施例中的过程相同,所以此处不再详细赘述。但区别在于判断的步骤,具体如下:
当获取第一正则表达式与一个语料集中,相匹配的语料占语料总数的比例,以及第一正则表达式匹配所有语料所消耗的匹配时长时,判断该比例是否小于等于预设比例,以及所述匹配时长是否超过预设时长,如果所述比例和所述匹配时长中的任意一个达到预设条件,例如所述比例小于等于所述预设比例,或者所述匹配时长大于等于预设时长,两个条件中的至少一个满足,则可以确定该筛选的正则表达式需要进行优化。
或者,可以通过两次筛选过程确定“合格”的正则表达式,具体包括:第一次筛选通过计算“比例”来确定模型中需要优化的正则表达式,并筛选出不需要优化,“合格”的正则表达式,即计算的比例小于预设比例。第二次筛选通过“匹配时长”来确定“合格”的正则表达式,即匹配时长小于其所对应的预设时长,最后,将两次筛选的正则表达式取交集,即将两次筛选中相同的正则表达式作为最后“合格”的正则表达式,其余的被认为是“不合格”需要优化的正则表达式。
本实施例提供的方法,通过两次筛选,分别是利用语料总数占比和匹配时长来判断需要优化的正则表达式,进而为优化大型语言模型中的正则表达式提供了便利。利用匹配时长筛选能够找出引起回溯的正则表达式,利用语料总数占比能够找出匹配语料较少的正则表达式,从而将这些性能不优的正则表达式从模型中剔除,提高模型质量。
对应于上述方法的实施例,本申请还提供了一种正则表达式筛选装置,该装置可应用于网络平台中,例如PAAS(Platform-as-a-Service,平台即服务)平台,也可以应用于一种设备或装置,用于实现上述各个实施例中的正则表达式筛选方法。
进一步地,如图5所示,该装置包括:获取单元501、处理单元502和发送单元503,另外还可以包括其它单元,例如存储单元等。
获取单元501,用于获取待筛选的正则表达式和语料集,所述语料集中包括至少一条语料;
处理单元502,用于将所述语料集中所有语料与所述正则表达式进行匹配,并统计相匹配的语料数量,计算所述相匹配的语料数量占所述语料集中的语料总数的比例,和/或,匹配时长,所述匹配时长为所述正则表达式匹配所述语料集中的所有语料所用的时间;如果所述比例小于等于预设比例,或者所述匹配时长大于等于预设时长,或者所述比例或所述匹配时长中的至少一个达到预设条件,则确定所述正则表达式需要优化。
可选的,在本实施例的一种具体的实现方式中,处理单元502,具体用于确定所述正则表达式所对应的字符规则,检测所述语料集中的每条语料是否符合所述字符规则;如果是,则确定所述当前语料与所述正则表达式相匹配;如果否,确定所述放弃当前语料与所述正则表达式不相匹配。
可选的,在本实施例的一种具体的实现方式中,获取单元501,具体用于获取用户输入的模型ID;
所述处理单元502,具体用于根据所述模型ID在数据库中查找所述待筛选的正则表达式所属的第一模型,每个所述模型ID唯一对应一个正则表达式模型;从所述第一模型中确定所述待筛选的正则表达式。
可选的,在本实施例的一种具体的实现方式中,所述第一模型中包括至少一个正则表达式,所述处理单元502,还用于对所述第一模型中的至少一个正则表达式进行筛选,统计其中需要优化的正则表达式,以及,将所述需要优化的正则表达式从所述第一模型中剔除。
可选的,在本实施例的一种具体的实现方式中,还包括输出单元,用于输出并显示对所述待筛选的正则表达式的筛选结果,所述输出方式包括图形化界面和API接口显示。
本申请还提供了一种网络设备,该网络设备包括前述实施例所述的正则表达式筛选装置,如图6所示,包括收发器601、处理器602和存储器603,此外,还可以包括显示器604,此外,还可以包括其它部件,本申请对此不进行限定。
进一步地,处理器602为网络设备的控制中心,利用各种接口和线路连接整个网络设备的各个部分,通过运行或执行存储在存储器603内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行网络设备的各种功能和/或处理数据。
可选的,处理器602可以仅包括中央处理器(central processing unit,CPU),也可以是GPU、数字信号处理器(digital signal processor,DSP)、及收发模块中的控制芯片(例如基带芯片)的组合。
收发器601,用于建立通信信道,使网络设备通过所述通信信道以连接至接收设备,从而实现数据传输。所述收发器还用于控制网络设备中的各组件的通信,并且可以支持直接内存存取(direct memory access)。
存储器603,用于存储数据,例如语料文本、正则表达式、模型、模型ID,以及计算得到的比例和匹配时长等。进一步地,所述存储器可以包括易失性存储器(volatilememory),例如随机存取内存(random access memory,RAM),还可以包括非易失性存储器(non-volatile memory),例如快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合。
显示器604,用于显示筛选结果,以及需要优化的正则表达式和合格的正则表达式,进一步地,所述显示器包括用户图形界面和API接口,所述API接口用于接收来自收发器601的数据,并将获取的数据通过图像用户界面展示给用户。
在本申请实施例中,图5所示的获取单元501和发送单元503所要实现的功能可以由所述网络设备的收发器601来实现,或者由处理器602控制的收发器601实现;所述发送单元503所要实现的功能也可以由所述网络设备的收发器601实现,或者也可以由处理器602控制的所述收发器601实现;所述处理单元502所要实现的功能则可以由所述处理器602实现。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的正则表达式筛选方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(random access memory,RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于正则表达式筛选方法实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。
Claims (10)
1.一种正则表达式筛选方法,其特征在于,所述方法包括:
获取待筛选的正则表达式和语料集,所述语料集中包括至少一条语料;
将所述语料集中所有语料与所述正则表达式进行匹配,并统计相匹配的语料数量,计算所述相匹配的语料数量占所述语料集中的语料总数的比例,和/或,匹配时长,所述匹配时长为所述正则表达式匹配所述语料集中的所有语料所用的时间;
如果所述比例小于等于预设比例,或者所述匹配时长大于等于预设时长,或者所述比例或所述匹配时长中的至少一个达到预设条件,则确定所述正则表达式需要优化。
2.根据权利要求1所述的方法,其特征在于,将所述语料集中的所有语料与所述正则表达式进行匹配,包括:
确定所述正则表达式所对应的字符规则;
检测所述语料集中的每条语料是否符合所述字符规则;
如果是,则确定所述当前语料与所述正则表达式相匹配;如果否,则确定所述当前语料与所述正则表达式不相匹配。
3.根据权利要求1所述的方法,其特征在于,所述获取待筛选的正则表达式,包括:
获取用户输入的模型ID;
根据所述模型ID在数据库中查找所述待筛选的正则表达式所属的第一模型,每个所述模型ID唯一对应一个正则表达式模型;
从所述第一模型中确定所述待筛选的正则表达式。
4.根据权利要求3所述的方法,其特征在于,所述第一模型中包括至少一个正则表达式,
所述方法还包括:
对所述第一模型中的至少一个正则表达式进行筛选,统计其中需要优化的正则表达式,以及,将所述需要优化的正则表达式从所述第一模型中剔除。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
将对所述待筛选的正则表达式的筛选结果通过图形化界面和应用程序编程接口显示。
6.一种正则表达式筛选装置,其特征在于,所述装置包括:
获取单元,用于获取待筛选的正则表达式和语料集,所述语料集中包括至少一条语料;
处理单元,用于将所述语料集中所有语料与所述正则表达式进行匹配,并统计相匹配的语料数量,计算所述相匹配的语料数量占所述语料集中的语料总数的比例,和/或,匹配时长,所述匹配时长为所述正则表达式匹配所述语料集中的所有语料所用的时间;如果所述比例小于等于预设比例,或者所述匹配时长大于等于预设时长,或者所述比例或所述匹配时长中的至少一个达到预设条件,则确定所述正则表达式需要优化。
7.根据权利要求6所述的装置,其特征在于,
所述处理单元,具体用于确定所述正则表达式所对应的字符规则,检测所述语料集中的每条语料是否符合所述字符规则;如果是,则确定所述当前语料与所述正则表达式相匹配;如果否,确定所述当前语料与所述正则表达式不相匹配。
8.根据权利要求6所述的装置,其特征在于,
所述获取单元,具体用于获取用户输入的模型ID;
所述处理单元,具体用于根据所述模型ID在数据库中查找所述待筛选的正则表达式所属的第一模型,每个所述模型ID唯一对应一个正则表达式模型;从所述第一模型中确定所述待筛选的正则表达式。
9.根据权利要求8所述的装置,其特征在于,所述第一模型中包括至少一个正则表达式,
所述处理单元,还用于对所述第一模型中的至少一个正则表达式进行筛选,统计其中需要优化的正则表达式,以及,将所述需要优化的正则表达式从所述第一模型中剔除。
10.根据权利要求6-8任一项所述的装置,其特征在于,还包括输出单元,
所述输出单元,用于输出并显示对所述待筛选的正则表达式的筛选结果,所述输出方式包括图形化界面和应用程序编程接口显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711446396.2A CN108182234B (zh) | 2017-12-27 | 2017-12-27 | 正则表达式筛选方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711446396.2A CN108182234B (zh) | 2017-12-27 | 2017-12-27 | 正则表达式筛选方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108182234A true CN108182234A (zh) | 2018-06-19 |
CN108182234B CN108182234B (zh) | 2021-07-09 |
Family
ID=62547795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711446396.2A Active CN108182234B (zh) | 2017-12-27 | 2017-12-27 | 正则表达式筛选方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108182234B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800432A (zh) * | 2019-01-24 | 2019-05-24 | 出门问问信息科技有限公司 | 评估语义理解准确率的方法、装置、存储介质和电子设备 |
CN110008310A (zh) * | 2019-04-04 | 2019-07-12 | 北京神州泰岳软件股份有限公司 | 一种内容搜索方法及装置 |
CN111400449A (zh) * | 2020-03-12 | 2020-07-10 | 广州大学 | 一种正则表达式抽取方法及装置 |
CN117556049A (zh) * | 2024-01-10 | 2024-02-13 | 杭州光云科技股份有限公司 | 一种基于大语言模型生成的正则表达式的文本分类方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101661462A (zh) * | 2009-07-17 | 2010-03-03 | 北京邮电大学 | 四层结构的中文文本正则化体系及实现 |
CN101753542A (zh) * | 2008-12-03 | 2010-06-23 | 北京天融信网络安全技术有限公司 | 一种加速防火墙过滤规则匹配的方法及装置 |
CN102567456A (zh) * | 2010-11-03 | 2012-07-11 | 微软公司 | 正则表达式的有条件的执行 |
CN102982048A (zh) * | 2011-09-07 | 2013-03-20 | 百度在线网络技术(北京)有限公司 | 一种用于评估垃圾信息挖掘规则的方法与设备 |
CN106874255A (zh) * | 2015-12-11 | 2017-06-20 | 北京国双科技有限公司 | 规则匹配方法及装置 |
CN106919542A (zh) * | 2015-12-24 | 2017-07-04 | 北京国双科技有限公司 | 规则匹配方法及装置 |
-
2017
- 2017-12-27 CN CN201711446396.2A patent/CN108182234B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753542A (zh) * | 2008-12-03 | 2010-06-23 | 北京天融信网络安全技术有限公司 | 一种加速防火墙过滤规则匹配的方法及装置 |
CN101661462A (zh) * | 2009-07-17 | 2010-03-03 | 北京邮电大学 | 四层结构的中文文本正则化体系及实现 |
CN102567456A (zh) * | 2010-11-03 | 2012-07-11 | 微软公司 | 正则表达式的有条件的执行 |
CN102982048A (zh) * | 2011-09-07 | 2013-03-20 | 百度在线网络技术(北京)有限公司 | 一种用于评估垃圾信息挖掘规则的方法与设备 |
CN106874255A (zh) * | 2015-12-11 | 2017-06-20 | 北京国双科技有限公司 | 规则匹配方法及装置 |
CN106919542A (zh) * | 2015-12-24 | 2017-07-04 | 北京国双科技有限公司 | 规则匹配方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800432A (zh) * | 2019-01-24 | 2019-05-24 | 出门问问信息科技有限公司 | 评估语义理解准确率的方法、装置、存储介质和电子设备 |
CN110008310A (zh) * | 2019-04-04 | 2019-07-12 | 北京神州泰岳软件股份有限公司 | 一种内容搜索方法及装置 |
CN111400449A (zh) * | 2020-03-12 | 2020-07-10 | 广州大学 | 一种正则表达式抽取方法及装置 |
CN111400449B (zh) * | 2020-03-12 | 2023-05-02 | 广州大学 | 一种正则表达式抽取方法及装置 |
CN117556049A (zh) * | 2024-01-10 | 2024-02-13 | 杭州光云科技股份有限公司 | 一种基于大语言模型生成的正则表达式的文本分类方法 |
CN117556049B (zh) * | 2024-01-10 | 2024-05-17 | 杭州光云科技股份有限公司 | 一种基于大语言模型生成的正则表达式的文本分类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108182234B (zh) | 2021-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108182234A (zh) | 正则表达式筛选方法和装置 | |
US7236972B2 (en) | Identifier vocabulary data access method and system | |
CA2248793C (en) | Statistical thesaurus, method of forming same, and use thereof in query expansion in automated text searching | |
CN101133388B (zh) | 基于多索引的信息检索系统 | |
CN102402619B (zh) | 一种搜索方法和装置 | |
CN101055585B (zh) | 文档聚类系统和方法 | |
US6546394B1 (en) | Database system having logical row identifiers | |
US7917528B1 (en) | Contextual display of query refinements | |
CN106202248B (zh) | 信息检索系统中基于短语的搜索 | |
US7552112B2 (en) | Discovering associative intent queries from search web logs | |
KR100672277B1 (ko) | 개인화 검색 방법 및 검색 서버 | |
US20040002945A1 (en) | Program for changing search results rank, recording medium for recording such a program, and content search processing method | |
CN101366024A (zh) | 用于处理数据搜索请求的方法和系统 | |
JP4737435B2 (ja) | ラベル付与システム、ラベリングサービスシステム、ラベル付与方法およびラベル付与プログラム | |
CA2184518A1 (en) | Real time structured summary search engine | |
CN103514236A (zh) | 检索应用中基于拼音的检索条件纠错提示处理方法 | |
CN102236664A (zh) | 基于语义归一化的检索系统、检索方法以及信息处理方法 | |
CN103699700A (zh) | 一种搜索引导的生成方法、系统及相关服务器 | |
CN104636448B (zh) | 一种音乐推荐方法及装置 | |
CN107122429A (zh) | 一种文件管理的方法和装置及移动终端 | |
CN103064880A (zh) | 一种基于搜索信息向用户提供网站选择的方法、装置和系统 | |
CN112579854A (zh) | 信息处理方法、装置、设备和存储介质 | |
CN104239321B (zh) | 一种面向搜索引擎的数据处理方法及装置 | |
JP6219967B2 (ja) | ラベル付非テキスト系アイテムを検索するためのシステム及び方法 | |
CN107147947B (zh) | 关键帧识别方法及装置 |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 230000 zone B, 19th floor, building A1, 3333 Xiyou Road, hi tech Zone, Hefei City, Anhui Province Applicant after: Dingfu Intelligent Technology Co., Ltd Address before: Room 630, 6th floor, Block A, Wanliu Xingui Building, 28 Wanquanzhuang Road, Haidian District, Beijing Applicant before: DINFO (BEIJING) SCIENCE DEVELOPMENT Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |