Linux Shell 基本概念及编程(2)
正则表达式,是一种表达式,那么这种表达式用来干嘛呢?这种表达式可以针对谁起作用呢?理解了这两个就可以得出正则表达式,正则表达式是针对字符进行匹配的运算表达式.我们明白了第一点,正则表达式只能作用于字符文件,或者说一段字符串.那么使用这个表达式,通常可以用来干嘛呢?通常有三种,一种是搜索,一种是替换,还有一种是统计.正则表达式通常使用前后两个“/”来表示,如图所示 /^love/.正则表达式在几乎所有的语言中都有支持,在LINUX SHELL中也是提供了支持.通常我们使用正则表达式同在VI中使用正则表达式一样.正则表达式作为一个表达式,通常有两种元素组成,一种是元元素,就是含有特殊意义的字符,这些字符用来表示一些特定含义,如^表示行首,$表示行尾.注意这种元字符与SHELL内部的通配符是两码事.另外一种是字符元素如/love/就是所有含有love的字符,/^love/加了一个元元字符,就是匹配以love开始的行.下表列出了所有LINUX Shell规则的正则表达式的元元素符.
使用这些规则可以使用vi编一个字符文件来尝试一下,也可以在windows中用ultraedit来试一下.
如针对上面的一段字符串,可以尝试如下表达式 /^love/ , /love$/,/l.ve/, /o*ve/ ,/[Ll]ove/,/ove[a-z]/,/ove[^a-zA-Z0-9]/ 前面所说的一个正则表达式由元字符和字符组成,那么想要将元字符变成正常字符,只需要用转义符\来表示如/love./ 和/love\./表示就不一样,后面只能匹配"love.”,前面则可以匹配lovely等. 关于列表中的后两种,比较复杂,用的也比较少.可参考如下图学习:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |