Unix grep正则表达式元字符

转载 2012年02月03日 15:49:06
grep正则表达式元字符集(基本集)

 

^

锚定行的开始 如:\'^grep\'匹配所有以grep开头的行。

$

锚定行的结束 如:\'grep$\'匹配所有以grep结尾的行。

匹配一个非换行符的字符 如:\'gr.p\'匹配gr后接一个任意字符,然后是p。

*

匹配零个或多个先前字符 如:\'*grep\'匹配所有一个或多个空格后紧跟grep的行。 .*一起用代表任意字符。

[]

匹配一个指定范围内的字符,如\'[Gg]rep\'匹配Grep和grep。

[^]

匹配一个不在指定范围内的字符,如:\'[^A-FH-Z]rep\'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。

(..)

标记匹配字符,如\'(love)\',love被标记为1。

<

锚定单词的开始,如:\'

>

锚定单词的结束,如\'grep>\'匹配包含以grep结尾的单词的行。

x{m}

重复字符x,m次,如:\'0{5}\'匹配包含5个o的行。

x{m,}

重复字符x,至少m次,如:\'o{5,}\'匹配至少有5个o的行。

x{m,n}

重复字符x,至少m次,不多于n次,如:\'o{5,10}\'匹配5--10个o的行。

w

匹配文字和数字字符,也就是[A-Za-z0-9],如:\'Gw*p\'匹配以G后跟零个或多个文字或数字字符,然后是p。

W

w的反置形式,匹配一个或多个非单词字符,如点号句号等。

 

b

单词锁定符,如: \'bgrepb\'只匹配grep。

3. 用于egrep和 grep -E的元字符扩展集

+

匹配一个或多个先前的字符。如:\'[a-z]+able\',匹配一个或多个小写字母后跟able的串,如loveable,enable,disable等。

?

匹配零个或多个先前的字符。如:\'gr?p\'匹配gr后跟一个或没有字符,然后是p的行。

a|b|c

匹配a或b或c。如:grep|sed匹配grep或sed

()

分组符号,如:love(able|rs)ov+匹配loveable或lovers,匹配一个或多个ov。

x{m},x{m,},x{m,n}

作用同x{m},x{m,},x{m,n}


怎样记住unix复杂的正则表达式转义符号情形

在unix和vim方面,文本处理能力最强的手段就是正则表达式了,但是这也恰恰是比较难记忆的。最痛苦的莫过于复杂的表达式,丑陋的字符转义。 下面就讨论如何记忆字符转义的情形。 首先字符转义无非就分两种...
  • tm8426
  • tm8426
  • 2014年12月24日 21:27
  • 725

UNIX和Linux Shell正则表达式语法介绍

一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串...
  • cnseiya
  • cnseiya
  • 2007年11月08日 09:59
  • 12405

UNIX 正则表达式

^                    锚定行的开始 如:'^grep'匹配所有以grep开头的行。  $                   锚定行的结束 如:'grep$'匹配所有以grep结...
  • dsw846169600
  • dsw846169600
  • 2011年12月21日 23:18
  • 864

linux中的grep命令用法

[Linux初窥]grep -- print lines matching a pattern (将符合样式的该行列出) 原文=请移驾:http://blog.csdn.net/greytree/ar...
  • qqliyunpeng
  • qqliyunpeng
  • 2015年06月02日 22:34
  • 3470

Unix下正则表达式

  • 2010年01月28日 14:41
  • 182KB
  • 下载

unix shell 常用正则表达式

  • 2013年01月06日 10:32
  • 8KB
  • 下载

grep -E 即 egrep 匹配多个

grep --help -E, --extended-regexp     PATTERN 是一个可扩展的正则表达式(缩写为 ERE) ‘egrep’即‘grep -E’。 匹配单个,...
  • devwang_com
  • devwang_com
  • 2016年09月08日 11:49
  • 11696

grep 实现and or 操作

在Linux的grep命令中如何使用OR,AND,NOT操作符呢?        其实,在grep命令中,有OR和NOT操作符的等价选项,但是并没有grep AND这种操作符。不过呢,可以使用pat...
  • xiaowangmaozi
  • xiaowangmaozi
  • 2016年11月24日 13:48
  • 277

Linux正则表达式-元字符

我们已经看过了表达式中的两个基本元素: 1.以一个字面值或变量表示的值。 2. 一个操作符。 正则表达式是由这些相同的元素组成的。除元字符除外,都被解释为只匹配它本身的字面值。 元字符汇总 ...
  • xiyangyang052
  • xiyangyang052
  • 2015年05月22日 22:18
  • 541

正则表达式-正则表达式的元字符

元字符是使用正则表达式不同于普通字符的地方,也是正则表达式能够发挥强大作用、具有强大表达能力的法宝。那么什么是元字符呢?元字符是一些在正则表达式中有特殊用途、不代表它本身字符意义的一组字符。利用元字符...
  • feiying008
  • feiying008
  • 2016年10月21日 18:57
  • 858
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unix grep正则表达式元字符
举报原因:
原因补充:

(最多只允许输入30个字)