码迷,mamicode.com
首页 > 其他好文 > 详细

grep及正则表达式

时间:2016-09-06 01:22:59      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:linux

grep及正则表达式详解

·grep

    即Global Research,根据模式(pattern->文本字符和正则表达式的元字符组成的匹配条件),搜索文本,并将符合模式的文本行显示出来的工具,相应的还有egrep和fgrep,使用格式:grep [options] pattern [file...],pattern要用单引号引起来:

    -i(ignore-case)选项表示忽略大小写

    --color选项表示显示颜色

    -v选项表示显示没有被模式匹配到的行,即反向过滤

    -o选项表示只显示被模式匹配到的字符串,而不是显示整行内容

    grep做部分匹配显示整行:

            \{m,n\}->表示匹配其前的字符至少m次,至多n次,反斜线是为了转译,防止花括号被bash解释

·位置锚定

    ->^表示锚定行首

        该字符后面的任意内容必须出现在行首

    ->$表示锚定行尾

        该字符后面的任意内容必须出现在行尾

    ->^$表示空白行

    ->[]表示匹配指定范围内的任意单个字符

    ->[^...]表示匹配指定范围外的任意单个字符

    ->\<表示锚定单词首部

        该字符后面的任意字符必须是单词的首部,还可以用\b表示

    ->\>表示锚定单词尾部

        该字符后面的任意字符必须是单词的尾部,还可以用\b表示

·字符集合

    ->[[:digit:]]表示数字

    ->[[:lower:]]表示小写字母

    ->[[:upper:]]表示大写字母

    ->[[:punct:]]表示标点符号

    ->[[:space:]]表示空白字符

    ->[[:alpha:]]表示字母

    ->[[:alnum:]]表示字母和数字

·正则表达式

    Regular Expression->REGEXP

    ->元字符

        .:匹配次数,在贪婪模式下

        *:匹配其前的字符任意次

            技术分享

        .*:表示任意长度的任意字符

        \?:表示匹配其前的字符一次或者0次

·分组

    \(\)->表示将内容分组,即后向引用

            

            

本文出自 “菜鸟的技术文档” 博客,请务必保留此出处http://zhubo.blog.51cto.com/11395641/1846555

grep及正则表达式

标签:linux

原文地址:http://zhubo.blog.51cto.com/11395641/1846555

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!