正则表达式是一种描述字符串结构的语法规则,是一个特定的格式化模式,可以匹配、替换、截取匹配的字符串。对于用户来说,可能以前接触过DOS,如果想要匹配当前文件夹下所有的文本文件,可以输入dir *.txt命令,按Enter键后所有.txt文件将会被列出来。这里的*.txt即可理解为一个简单的正则表达式。
在学习正则表达式之前,先来了解一下正则表达式中的几个容易混淆的术语,这对于学习正则表达式有很大的帮助。
@ grep:最初是ED编辑器中的一条命令,用来显示文件中特定的内容,后来成为一个独立的工具。
@ egrep: grep虽然不断地更新升级,但仍然无法跟上技术的脚步。为此,贝尔实验室推出了egrep,意为“扩展的grep”,这大大增强了正则表达式的能力。
@ POSIX(Portable Operating System Interface of Unix):可移植操作系统接口。在grep发展的同时,其他一些开发人员也按照自己的喜好开发出了具有独特风格的版本。但问题也随之而来,有的程序支持某个元字符,而有的程序则不支持。因此就有了POSIX,POSIX是一系列标准,确保了操作系统之间的可移植性。但POSIX和SQL—样,没有成为最终的标准而只能作为一个参考。
@ Perl(Practical Extraction and Reporting Language):实际抽取与汇报语言。1987年,Larry Wall发布了 Perl。在随后的7年时间里,Peri经历了从Peril到现在的Perl5的发展,最终Perl成为POSIX之后的另一个标准。
@ PCRE: Perl的成功,让其他开发人员在某种程度上要兼容Perl,包括C/C++、Java, Python等都有自己的正则表达式。1997年,Philip Hazel开发了PCRE库,这是兼容Perl正则表达式的一套正则引擎,其他开发人员可以将PCRE整合到自己的语言中,为用户提供丰富的正则功能。许多软件都使用PCRE, PHP正是其中之一。
已有 22658 名学员学习以下课程通过考试
最需教育客户端 软件问题一手掌握
去 App Store 免费下载 iOS 客户端
点击加载更多评论>>