正则表达式在企业信息管理开发中的应用.pdf
上传人:qw****27 上传时间:2024-09-10 格式:PDF 页数:4 大小:212KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

正则表达式在企业信息管理开发中的应用.pdf

正则表达式在企业信息管理开发中的应用.pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

正则表达式在企业信息管理开发中的应用武汉第二船舶设计研究所武汉430064王辉丁明君杨进摘要文本是我们在使用计算机时要处理的重要内容,无论是编写文档还是编辑代码,文本几乎无处不在。因此,对文本的搜索和操作成为一项重要工作。正则表达式是一种操作文本的强大工具,而且适用于各种语言。本文将介绍正则表达式的基本规则,及其在管理信息系统开发过程中的应用。关键词:正则表达式字符模式元字符1概述正则表达式是一种匹配文本中的字符序列的字符模式,它是一种能够操作文本的工具。从最基本的层面来说,可以让计算机用户和开发人员找到想要的文本块,而且通常会以更适合的内容来替换这些文本块。在其他情况下,正则表达式用于测试一个字符序列中是否包含被允许的字符模式,目的是为了存储的有效性而进行的符合性测试。正则表达式的作用归结为一句话,就是判断一个字符序列是否与一个模式相匹配。从宽泛的意义上来看,说正则表达式是语言是没有问题的。但是,严格来讲,不存在正则表达式这门语言。与JavaScript和VBScript这样的脚本语言类似,他们都只能在另一种应用程序或者语言的环境下使用。2应用范围在典型的搜索和替换操作中,必须提供要查找的确切文字。这种技术对于静态文本中的简单搜索和替换任务可能足够了,但是由于它缺乏灵活性,因此在搜索动态文本时就有困难了,甚至是不可能的。使用正则表达式,我们可以做到:1)测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式。这称为数据有效性验证。2)替换文本。可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字。3)根据模式匹配从字符串中提取一个子字符串。可以用来在文本或输入字段中查找特定文字。例如,如果需要搜索整个web站点来删除某些过时的材料并替换某些HTML格式化标记,则可以使用正则表达式对每个文件进行测试,看在该文件中是否存在所要查找的材料或HTML格式化标记。用这个方法,就可以将受影响的文件范围缩小到包含要删除或更改的材料的那些文件。然后可以使用正则表达式来删除过时的材料,最后,可以再次使用正则表达式来查找并替换那些需要替换的标记。3语法与应用其实我们在使用计算机的时候多少都已经掌握了一些正则表达式的用法,只是还不知道107所使用的文本模式就是正则表达式。比如,在文字处理软件中或在命令行中查看目录列表时。目前大多数文字处理软件都能够在某种程度上支持正则表达式,但是在软件中却看不到正则表达式的字眼。例如,MicrosoftWord支持有限的正则表达式用法,它使用“通配符”来描述对正则表达式模式的支持。最简单的正则表达式模式就是文本直接量,即,如果想查找Star的文本模式,可以直接将这4个字符输入Word的查找对话框中。但是这种方法在搜索(替换)大量文本时会存在一些问题,很多不改被替换的地方也被替换了。如果我们曾经使用过命令行,那么很可能在查看目录列表时使用过简单的正则表达式。在命令行中,会涉及到两个元字符(是指在正则表达式模式中具有特殊含义的字符或字符组合):*(星号)和?(问号)。例如查找当前目录中的可执行文件,可以在命令行中输入如下命令:dir*.exe。而模式*.exe则匹配文件名中包含零个或多个字符并且后面跟一个句点和一个直接量字符序列exe的文件。类似地,模式*.*表示零个或多个字符后跟一个句点以及零个或多个字符。图1-1正则表达式的语法非常简洁,而且对于不熟悉正则表达式的人,看起来很奇怪。正则表达式没有标准的规范,因此具有特定含义的正则表达式模式在支持正则表达式的不同语言和工具之间也不相同。正则表达式最早是因为被Perl语言采用才引起人们注意的,由于遵循不同程度的精确性,导致了其他语言和应用程序中的正则表达式语法不相同。如果我们在108Perl这样的脚本语言中使用.(句点)元字符,但在Word中实现同样的功能则要使用?(问号)。在这里很显然Word是不规范的,它只是正则表达式功能的不完整及非规范的实现;而且像文件路径中那样的用法也并不是真正的正则表达式用法。不同实现之间的差异也非常多,例如,^元字符在某些语言的正则表达式中用于表示一行的开始位置;但就在同一种语言环境下,^元字符在字符类中使用时,就变成了否定的含义(或非、取反、补集)„„在Windows平台下的一些编程语言和脚本语言对正则表达式也是支持的,包括如下:JavaScript、VBScript、VB.NET、C#、PHP、Java、Perl、MySQL、SQLServer2000等。正则表达式操作中的限定符、大括号