循路觅宗师,形影不相离,师知吾亦知,吾乃成宗师。

BIBLE模型

发掘积累过程的快感

首页»BIBLE模型 Perfect»计算机基础»编程基础»第二节:了解正则表达式的结构

在正式学习正则表达式之前,我们先来了解下操作系统中的文件操作。我们都知道,sitemap.xml(这是一个网站地图文件,如果有兴趣,可以使用https://sitemap.webkk.net生成你自己网站地图) 是一个文件名,但如果你用过Unix 或者 DOS/Windows的话,就会知道“*.xml”能够用来选择多个文件。在此类文件名(称为“文件群组” file globs或者“通配符” wildcards)中,有些字符具有特殊的意义。星号表示“任意文本”,问号表示“任意单个字符”。所以文件群组“*.xml”以能够匹配字符「*」符号开头,以普通文字「.xml」结尾,所以,它的意思是:选择以任意文本开头,以.xml结尾的所有文件。

大多数系统都提供了少量的附加特殊字符,但总的来说这些文件名模式(filename pattrens)的能力还很有限。不过这些只涉及到文件名,所以已经够用了。

不过,处理文本就没有这么简单了,所以一种“通用的模式语言”(generalized pattren language)已经发展起来,功能强大,描述能力很强,可以用来解决各种问题,它就是“正则表达式”(regular expression)。

完整的正则表达式由两种字符构成。特殊字符(例如文件名例子中的*)称为“元字符”(metacharacters),其他为“文字”(literal),或者是普通文本字符。

为了便于理解,我们可以把正则表达式想象为普通语言,普通字符对应普通语言中的单词,而元字符对应则是语法。根据语言的规则,按照语法把单词组合起来,就会得到能传达思想的文本。

有这样一个时候,我需要统计邮件中所有的来信,因为有很多重复的,如果要一个一个统计,这将是一件非常可怕的事。于是我用这样一个正则来处理「/^(from|subject):/i」,可以获取到所有以from:或者subject:开头(不区分大小写)的文本。

互联网信息太多太杂,各互联网公司不断推送娱乐花边新闻,SNS,微博不断转移我们的注意力。但是,我们的时间和精力却是有限的。这里是互联网浩瀚的海洋中的一座宁静与美丽的小岛,供开发者歇息与静心潜心修炼。 “Bible”是圣经,有权威的书,我们的本意就是为开发者提供真正有用的的资料。 我的电子邮件1217179982@qq.com,您在开发过程中遇到任何问题,欢迎与我联系。
Copyright © 2017. All rights reserved. 本站由 Helay 纯手工打造