[发明专利]基于正则表达式组和控制逻辑的内容抽取方法无效
申请号: | 201010614485.5 | 申请日: | 2010-12-30 |
公开(公告)号: | CN102063493A | 公开(公告)日: | 2011-05-18 |
发明(设计)人: | 邓志鸿;徐潇然 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F17/22 |
代理公司: | 北京万象新悦知识产权代理事务所(普通合伙) 11360 | 代理人: | 贾晓玲 |
地址: | 100871*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 正则 表达式 控制 逻辑 内容 抽取 方法 | ||
1.一种文档的内容抽取方法,所述文档为网页或半结构化数据,其特征在于,所述方法基于正则表达式组和控制逻辑;所述方法对文档元素进行自外而内的层层定位,每一次定位包括如下要素:
a)匹配点:起始匹配点、结束匹配点、内部匹配点;
所述匹配点是通过一组正则表达式匹配文本获得的位置,起始匹配点和结束匹配点间的文本区域为要返回的定位区域,内部匹配点用来触发操作;
b)触发操作:初始化操作、先执行操作、后执行操作;
所述触发操作是一组被调用的函数,其中初始化操作包括定义变量和初始化变量值,先执行操作和后执行操作分别是在结束点判断逻辑的前后调用的函数;
a)逻辑控制:结束点判断逻辑、文本取舍判断逻辑;
所述逻辑控制是一组返回布尔变量的函数,用来确定结束点位置和区域的取舍。
2.如权利要求1所述的内容抽取方法,其特征在于,所述一次定位的流程如下:
1)执行初始化操作,设置变量k表示匹配的是第k个匹配,设置状态变量s;
2)匹配起始正则表达式,如果找不到匹配则转步骤8),否则锚定起始点;
3)用或逻辑组合多个内部正则表达式和结束正则表达式,从起始点位置向后匹配;
4)若发现匹配,则抽出匹配文本T;若无匹配,转至步骤8);
5)在绑定先执行操作的正则表达式中,如果哪个正则表达式匹配上文本T,则触发该正则表达式对应的先执行操作;
6)判断文本T是否匹配结束表达式,如果匹配则进一步调用函数Finished;函数Finished是一段判断结束点是否合法的逻辑,根据状态变量s是否满足用户给的条件返回true或false,如果返回true还需调用函数IncludeText;函数IncludeText是一段判断文本是取还是舍的逻辑,通过看变量k是否满足条件返回true或false,然后变量k加1,状态变量s恢复原值,转步骤1)匹配下一个;
7)在绑定后执行操作的正则表达式中,如果哪个正则表达式匹配上文本T,则触发该正则表达式对应的后执行操作,然后转步骤4);
a)结束。
3.如权利要求1所述的内容抽取方法,其特征在于,所述触发操作和逻辑控制由用户自定义,通过一个配置文件实现。
4.如权利要求3所述的内容抽取方法,其特征在于,所述配置文件为XML文档或者文本文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010614485.5/1.html,转载请声明来源钻瓜专利网。