正则表达式在应用文文本自动生成系统中的应用研究

时间:2022-07-19 11:33:18

正则表达式在应用文文本自动生成系统中的应用研究

【摘要】应用文作为人们日常生活中经常接触的一种文本类型,其特点是:广泛性、实用性、程式性。本文依据模板生成技术原理,结合正则表达式,研究设计应用文文本自动生成系统。

【关键词】应用文 正则表达式 模板生成技术 文本自动生成系统

一、应用文与文本自动生成技术

应用文作为人们日常生活中经常接触的一种文本类型,其特点是:广泛性、实用性、程式性。广泛且大量的应用在人们的日常交往和经济生活中,这类文本都是对象明确,文字简约,时间性强,讲求及时,格式固定,要求书写规范。比如招聘启示、信件等。

文本自动生成技术是研究和模拟人类讲一段话或是手写一段文本的生成过程, 它试图利用计算机采集一些关键信息, 自动生成一段文本。这是自然语言研究领域的一大分支。自动生成技术的一般步骤是:

(1)文本内容决定阶段或者叫做文本规划阶段,分为两个小步骤:

文本内容规划(宏观规划):决定文本主要信息颗粒和段落结构。

文本句子规划(微观规划):把相关文本资源(词和句子)映射到内容规划中去;把内容规划对象组合、排序成段落和句子;句子辖域确定;消除冗余、精炼语句;嵌入词的引进和常规用语的修饰;布局和格式处理。

(2)表层形式生成:处理语言的选词、词的形态变化和词组搭配等。

文本自动生成技术主要有两大种:模板生成技术和自然语言生成技术。其中模板生成技术的基本思路都:通过规则定义文本内容和结构,由文本生成器通过文本资料库确定文本词句和表达形式。

二、模板生成技术与正则表达式

模板生成技术的原理就是事先设计好几种可能出现的情况,构造模板,模板中包括了一些固定关键词、可变量和文本格式信息等,当用户输入一定信息后,文本生成器将这些信息作为字符串嵌入到模板中替代变量。其优点是技术思路简单,缺点是模板设计过程繁杂,生成文本质量不高,而且文本生成仍然需要人工参与。而这种技术的特点恰好符合应用文文本格式固定、书写规范的要求。所以本文按照模板生成技术原理,来研究应用文文本自动生成系统的设计开发。

传统的模板设计思路的一个重要的缺陷是必须事先设计,其次是由于模板本身不具备语言分析处理功能,使得文本句子规划(微观规划)只能停留在字符串水平,为文本生成器设计带来了难度。而自然语言生成技术可以对采集到的未经处理的生语料通过词法、句法、语义等多层次的加工使知识获取成为可能。

而正则表达式的出现,为模板生成技术的实现提供了新的方法和更便捷的手段。正则表达式是一种文法语言,正则表达式提供了功能强大、灵活而又高效的方法来处理文本。正则表达式的全面模式匹配表示法可以快速分析大量文本以找到特定的字符模式;提取、编辑、替换或删除文本子字符串;或将提取的字符串添加到某个集合中以生成文本。

对于处理字符串(例如 HTML处理、日志文件分析和 HTTP标头分析)的许多应用程序而言,正则表达式是不可缺少的工具。目前,正则表达式已经在很多软件中得到广泛的应用,包括windows、Linux, Unix等,HP操作系统,PHP,C#,Java等开发环境,以及很多的应用软件中,都可以看到正则表达式的影子。

三、应用文文本自动生成系统

应用文文本自动生成系统作为文本自动生成系统的一个分支,其解决的主要问题是能为用户快速提供一个格式标准、内容符合要求的文本内容,使得用户在基本不需要自己动手写的情况下完成一篇应用文文本的创建。

1.系统任务分析与实现

(1)模板自动建立

输入不同类型的应用文作为文本库数据来源,基于关键词使用正则表达式将现有文本描述为一个个模式串,形成一个模式串集合,这个模式串集合加上段落结构所生成的文本文件就作为模板,放入指定的不同类别的模板库中。例如对于如下一封信件文本内容:

敬爱的爸爸、妈妈:

你们好,很久不见你们,非常挂念!

儿子最近在外地工作很顺利,最近忙于一个工程,一直没有和你们联系,希望你们不要担忧。

最近家里情况都好吧?爸爸要多注意身体。我会抽空回家看看二老,如有什么难事务必通知儿子。

身体健康!

2008-5-12

第一步:将文章按照标点符号分解为一个个符号串

第二步:设定关键词,如“爸爸”、“妈妈”、“儿子”、“忙于”、“希望”、“和”等,通过文法分析变成一个个用正则表达式描述的模式串集合。

第三步:将整个文本演变为由正则表达式集合描述的模板文件:

^(亲爱的)+(爸爸|妈妈):

你们好,很久不见你们非常挂念!

^(儿子)+在\\D*?,^(忙于)\\D*,^(一直)\\D*和+*,^(希望) )\\D*。

^(最近) (\\D)* +情况\\d*?,^(爸爸)* (注意)+身体。^(我会)+(回家)+\\D*,^(如有)+\\D* (务必) \\D*。

身体健康!

2008-5-12

第四步:将模板文本存入信件类模板库中。

(2)文本库自动创建。本系统中的文本句子规划阶段实现通过如下方式:由系统建立者输入不同类型的应用文作为文本库数据来源,由系统自动分析,以某种正则表达式分析规则,按照关键词建立文本库。

(3)文本自动生成。用户使用本系统时,由用户指定类别,选择一个模板,文本生成器读入模板,在遇到正则表达式描述的模式串时,就自动搜寻文本库的词句记录,找到符合模式串的字符串,并替代到生成的应用文文本中去,直至模板读入过程结束,这次文本生成过程完成。

2.系统结构设计

本系统采用C/S架构,其中有两个客户端子系统:一个是模板生成子系统,另一个是应用文文本自动生成子系统。服务器端是模板数据库和文本数据库系统。

目前大多数开发语言都能很方便的设计出C/S架构的系统,常见的如.NET平台的VS2005。

3.本系统的特点分析:

(1)本系统的模板生成更为简便。由于充分利用了正则表达式提供的强大功能,简化了系统复杂度和开发难道,尤其是在模板生成上,能充分利用现有文本,只需少量设置就可生成模板。

(2)本系统不但适用于中文应用文生成,也适用与其他语种应用文生成。文本中的文本句子规划阶段,由于使用关键词不受语种限制。本系统在文本的语种上不受语法、修辞的限制,因此在文本语种支持上具有更大灵活性,支持多语种应用文自动生成,应用范围更加广大。

(3)比起自然语言系统及一般的简单填充式模板系统,本系统更为容易实现。在文本模板生成手段上提高了灵活性,是一个可行性很高的文本自动生成方案,充分利用了正则表达式提供的强大文法描述能力,绕开了文本内容规划和表层形式生成的一些难题。

参考文献:

[1]姚天顺.自然语言理解――一种让机器动的人类语言的研究.北京:清华大学出版社,1995.

[2](美)Daniel Jurafsky,James H. Martin著.冯志伟 ,孙乐译.自然语言处理综论.北京:电子工业出版社, 2005.

[3](美)Stephane Faroult;Peter Robson.温昱,靳向阳译. SQL语言艺术,北京:电子工业出版社, 2005.

(作者单位:安徽六安职业技术学院)

注:“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。”

上一篇:Love and Marriage 下一篇:要重视和发挥家庭教育在死亡教育中的作用