正则表达与扩展正则表达

说到正则表达式那就不得不说grep命令:

1.grep命令的作用:grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。2.格式
2.命令格式 :grep [options]
3.主要参数:
grep-c:只输出匹配行的计数。

正则表达与扩展正则表达
grep-i:不区分大 小写(只适用于单字符)。

正则表达与扩展正则表达

grep-n:显示匹配行及 行号。

正则表达与扩展正则表达


-v:显示不包含匹配文本的所有行。

正则表达与扩展正则表达

grep -o 仅显示匹配到的字符串

正则表达与扩展正则表达

正则表达式

grep正则表达式元字符集:
 ^ 锚定行的开始 如:‘^grep’匹配所有以grep开头的行。
$ 锚定行的结束 如:’grep$’匹配所有以grep结尾的行。
. 匹配一个非换行符的字符 如:’gr.p’匹配gr后接一个任意字符,然后是p。
* 匹配零个或多个先前字符 如:’*grep’匹配所有一个或多个空格后紧跟grep的行。 .*一起用代表任意字符。
 [] 匹配一个指定范围内的字符,如'[Gg]rep’匹配Grep和grep。
[^] 匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep’匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。
\(..\) 标记匹配字符,如’\(root\)’,root被标记为1个整体。
 \< 锚定单词的开始,如:’\<匹配包含以grep开头的单词的行。
\> 锚定单词的结束,如’grep\>’匹配包含以grep结尾的单词的行。
q\{m\} 重复字符q,m次,如:’0\{3\}’匹配包含3个0的行。
q\{m,\} 重复字符q,至少m次,如:’0\{3,\}’匹配至少有3个0的行。
q\{m,n\}重复字符q,至少m次,不多于n次,如:’0\{1,10\}’匹配1–10个0的行。
 \b 单词锁定符,如: ‘\bgrep\b’只匹配grep。

  [::alnum] : 数字字符 [:digit:] : 数字字符 [:punct:] : 标点符号字符
[:alpha:] : 字母字符 [:graph:] : 非空格字符  [:space:] : 空格字符
           [:blank:] : 空格与定位字符 [:lower:] : 小写字母字符 [:upper:] : 大写字母字符
[:cntrl:] : 控制字符 [:print:] : 可显示的字符 [:xdigit:] : 16进制数字

扩展正则表达式

.:匹配任意单个字符

[]:匹配指定范围内的单个字符

[^]:匹配指定范围外的任意单个字符

匹配次数:

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

.*:匹配任意字符

\? 匹配前面的字符1次或0次

+:匹配前面的字符至少1次

{m,n}:匹配前面字符

 


原创文章,作者:李先生,如若转载,请注明出处:http://www.178linux.com/84044

(0)
李先生李先生
上一篇 2017-08-07 02:18
下一篇 2017-08-07 08:45

相关推荐

  • ACL权限管理练习

    ACL简介;
    权限管理练习

    2017-09-11
  • nginx相关配置及解释

    全局配置: user  nginx nginx; #运行程序的用户和用户组pid      /var/run/nginx.pid; #主控进程load_module /usr/lib64/nginx/modules/ngx_http_geoip_module.so;#加载模块 work进程的数量:通常为当前主…

    Linux干货 2017-05-07
  • 计算机(服务器)的基础知识

    计算机(服务器)基础知识  计算机系统由硬件系统与软件系统两大部分组成 一、计算机(Computer)):又称电脑,是一种能自动接收和存储信息,并按照存储在其内部的程序对海量数据进行自动、高速地处理,然后把处理结果输出的现代化智能电子设备。 发展历史:       第一代计算机(1946-1957)…

    Linux干货 2017-02-15
  • 马哥教育网络班21期+第五周课程练习

    第五周作业 1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; cat /boot/grub/grub.conf  | grep "^[[:space:]]\+" 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至…

    Linux干货 2016-10-17
  • 优云软件:双态运维下,老司机是怎么玩CMDB的?

    行业内有个科技公司,CMDB前后建设12年,重构了N次,一言不合就重构,我深深的被这种屡拆屡战,初心不改精神所折服。我真心想问下做CMDB的兄弟,各位是怎么熬过来的?请不要回避,其实我们都曾被这样虐过! 近几年我司承建国内很多传统行业的CMDB项目,坦白的说,随着互联网+热潮的冲击,因很多传统企业也慢慢的在转变业务,把很多传统型的业务互联网化,或者开辟新型业…

    2016-08-05
  • CentOS软RAID实现配置

     实现软raid1、fdisk t fd //修改磁盘分区类型fd2、创建raid设备     创建一个RAID5,5块儿硬盘4块做RAID,1块儿做空闲硬盘(顶替硬盘使用)    mdadm -C /dev/md0 -a yes -l 5  -n …

    Linux干货 2016-08-30