正则表达式 小结

听老师和学姐都说,正则表达式很重要,所以这次我总结一下,同时加强一下记忆。

目前我们学的正则表达式有:字符匹配;匹配字数;位置锚定。

:. 匹配任意单个字符
 [] 匹配指定范围内的任意单个字符
 [^] 匹配指定范围外的任意单个字符
 [:alnum:] 或 [0-9a-zA-Z]
 [:alpha:] 或 [a-zA-Z]
 [:upper:] 或 [A-Z]
 [:lower:] 或 [a-z]
 [:blank:] 空白字符(空格和制表符)
 [:space:] 水平和垂直的空白字符(比[:blank:]包含的范围广)
 [:cntrl:] 不可打印的控制字符(退格、删除、警铃…)
 [:digit:] 十进制数字 或[0-9]
 [:xdigit:]十六进制数字
 [:graph:] 可打印的非空白字符
 [:print:] 可打印字符
 [:punct:] 标点符号

. 匹配任意单个字符
正则表达式 小结正则表达式 小结

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

正则表达式 小结
正则表达式 小结

 [^] 匹配指定范围外的任意单个字符
正则表达式 小结

 [:alnum:] 或 [0-9a-zA-Z]
[:alpha:] 或 [a-zA-Z]

 [:digit:] 十进制

正则表达式 小结

 [:upper:] 或 [A-Z]
[:lower:] 或 [a-z]
正则表达式 小结

匹配次数:

*匹配前面的字符任意次,包括0次

.*任意长度的任意字符

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

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

正则表达式 小结

\{n\}匹配前面的字符n次

\{m,n\}匹配其前面的字符至少m次最多n次正则表达式 小结

位置锚定:

^行首锚定,用于模式的最左侧正则表达式 小结

$行尾锚定,用于模式最右侧

正则表达式 小结

给给定字符着色

正则表达式 小结

alias grep=’grep –color=auto’ 给所选中的项着色
   
    grep -v root /etc/passwd :反选,除了root都显示
   
    grep -i root /etc/passwd :不区分大小写
   
    grep -o root /etc/passwd :只显示root

    grep -c root /etc/passwd :只显示匹配到结果的行数

    grep -A 3 root /etc/passwd :显示root后3行

    grep -B 3 root /etc/passwd :显示root前3行

    grep -C 3 root /etc/passwd :显示root前后3行

    grep -e root /etc/passwd :同时搜索多个关键字
例子:
    grep -e root -e meng1 /etc/passwd
    root:x:0:0:root:/root:/bin/bash
    operator:x:11:0:operator:/root:/sbin/nologin
    meng1:x:509:512::/home/meng1:/bin/bash
    rooter:x:511:514::/home/rooter:/bin/bash

    grep -E root /etc/passwd :使用扩展正则表达式,或egrep

    grep -W root /etc/passwd:仅显示匹配关键字所在行

    grep -F root /etc/passwd :不使用扩展正则表达式
   patch -b 文件1 存放目录:   使文件1 的内容更新为存放到目录后新生成的文件


^ []外:以….开头
    内:非

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

(0)
mengermenger
上一篇 2017-07-30 23:35
下一篇 2017-07-31 07:59

相关推荐

  • sed,vim练习

    1 、删除/etc/grub2.cfg 文件中所有以空白开头的行行首的 空白字符 [root@localhost ~]# sed -r 's@^[[:space:]]+@@' /etc/grub2.cfg 2 、删除/etc/fstab 文件中所有以#开头,后面至少跟一个空白字符的行的行首…

    Linux干货 2016-08-10
  • CentOS的软件包的管理之rpm和yum

    在linux上,一个软件包通常由二进制程序,库文件,配置文件和帮助文件组成。 其中: 二进制程序一般都放在/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin和/usr/local/sbin这几个目录下边; 库文件都放在/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib和/usr/…

    Linux干货 2017-04-23
  • 文件处理工具系列(二):行编辑器sed

    1、sed介绍     sed(Stream EDitor),是一种行编辑工具,它一次处理一行内容。处理时,把当前匹配到的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令对这些数据做出相应的增删改查操作,处理完成后,默认输出至屏幕,而未被匹配到的行也将默认输出至屏幕。而原来的文件内容并没有发生改变,除…

    Linux干货 2016-08-11
  • 网络基础笔记

    网络管理笔记 1. 网络概念:     一组网络设备或计算机,通过无形的规则链接起来的体系!    2. 应用程序种类:     (1)批处理应用程序:            FTP、TFTP、库存更新    &nbsp…

    Linux干货 2017-03-16
  • 单引号,双引号,反引号的作用(首篇)

    哈哈哈!这是我的博客生涯的开始,也是我学习Linux的开始,所以我将励志成为一名老司机带你装X带你飞。 1.首先是三兄弟中的单引号,它的作用只是单纯的呈现出自己所包含的文字并不能执行其中的命令,所以它也是三兄弟中最笨的那个,作用单一,简单。 2,再来介绍介绍双引号,他的作用和单引号大同小异,它能包含单引号,反引号,以及除了执行以$和\的字符为首的函数能认识之…

    2017-07-11
  • N26 第四周博客作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 演示:     [root@47d523181d25 /]# cp -r /etc/skel/ /home/tuser1     [root@47d523…

    Linux干货 2017-02-25