正则表达与扩展正则表达

说到正则表达式那就不得不说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

相关推荐

  • Linux终端类型

      2016-10-16  19:29:36  Linux终端类型   基本概念:  Linux终端其实就是用户与操作系统之间的一个接口,用户通过终端与操作系统进行交互。 在Linux系统终端包括以下几种: 1、控制台终端(Terminal)它的文件路径(/dev/console) (物理终端直接连接键盘和鼠…

    Linux干货 2016-10-17
  • shell脚本编程 4

    Shell脚本编程4 一、杂项知识整理 1、数组赋值方法: declare -a files files=(/var/log/*.log)通配所有文件也可 2、创建临时文件: mktemp命令:创建的临时文件可避免冲突 mktemp  NAME.XXXX(x至少要出现三个) -d 创建临时目录 –tmpdir=/DIR 指明临时文件所存…

    Linux干货 2016-08-24
  • Ansible+Corosync+Pacemaker+nfs实现http高可用

    目录: (一)实验环境 (二)准备工作 (三)为node1和node2配置基础配置 (四)使用ansible部署nfs (五)使用ansible部署corosync和pacemaker (六)使用ansible安装crmsh工具 (七)使用crmsh配置http高可用 (八)验证 (九)需要注意的地方 (一)实验环境 1.1、环境拓扑 1.2、所需系统 4台…

    Linux干货 2016-04-29
  • nginx+keepalived构建负载均衡代理服务器

    实验环境: 1、centos7.3 centos6.82、两台VS提供nginx代理和keepalived3、两台RS提供httpd服务并部署wordpress4、另外一台提供Mysql数据库服务 实验拓扑图: 拓扑图 实验步骤 1、在vs1(172.18.251.4)上配置,用yum安装keepalived和nginx yum install -y kee…

    Linux干货 2017-05-21
  • 马哥教育N22期第六周作业

    关于vim编辑器使用方法整理 编辑器分为文本编辑器、全屏编辑器、模式化编辑器 vim是最常用的编辑器之一,是vi的增强版 基本模式分为编辑模式、命令模式、输入模式、末行模式 下面我们介绍一下vim编辑器常用方法: 打开文件 vim +#:打开文件后,直接光标处于第#行行首 +/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配 +…

    Linux干货 2016-10-09
  • 推荐-zabbix原理篇(1)

    zabbix原理篇(1) 介绍zabbix 之前让我们先来熟悉一下什么snmp ☺ SNMP:Simple Network Management Protoclol  翻译一下:简单网络管理协议 SNMP的工作模式是啥 ☺ NMS向agent采集数据 agent向NMS报告数据 NMS请求agent修改配置 SNMP组件…

    Linux干货 2016-04-11