正则表达式的如何使用

简述:正则表达式主要用于文本的搜索,它表示了搜索文本的过滤条件。根据这些条件,对目标文本朱行进行匹配检查,最后对输出匹配到符合过滤条件的行。

使用:正确高效的使用正则表达式,需要掌握以下基本知识点

      

 1:语法 grep [OPTION] PATTERN FILE…..

       OPTION]:表示搜索的选项。其中

                    -v:显示不能被pattern匹配到的行

                         -i:表示忽略字符大小写

                         – o:表示仅仅显示匹配到的字符串

                         -A#:显示匹配到的行以及后几行

                         -B#:显示匹配到的行以及前几行

                          -C#:显示匹配到的行以及前后几行

            PATTERN:表示正则表达式,熟练写好所需要的正则表达式,需要熟练掌握正则表达式元字符

 

2 基本正则表达式元字符

一:字符匹配

. :匹配任意单个字符

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

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

[:alnum:]:字母和数字

[:alpha:]:字母

[:lower:]:小写字母

[:power:]:大写字母

[:digit:]:数字

[:blank:] 空白字符

[:space:]  包含范围比 blank更广

二:匹配次数

用在要指定次数的字符后面,用于指定前面的字符要出现的次数

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

.*任意长度的任意字符

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

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

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

\{m,n\}匹配前面的字符至少m次至多n

\{,n\}匹配前面的字符至多n

\{m,\}匹配前面的字符至少m

三:位置锚定

^行首

$行尾

\< 词首

\>词尾

\<patten\>匹配整个单词

四:分组

\(\)将一个或多个字符捆绑在一起,当做一个整体进行处理

\(word\)


3 如何熟练使用正则表达式

     一:熟练掌握元字符所表示的意义

     二:记忆一些常用的表达式,比如说^[[:space:]]*$表示空行 \<word>\ 表示匹配到的某个单词

     三:linux的一些基础命令的掌握。比如说wc head tail cut sort uniq 和一些常用的查询命令 。

     四:多做练习,整理做题的思路。反过来检测知识不牢靠的点,后续再及时复习。

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

(0)
mapipimapipi
上一篇 2017-06-04 19:25
下一篇 2017-06-04 21:32

相关推荐

  • CentOS 6.5 LVM磁盘管理学习笔记

    在系统运维和服务器管理过程中,经常遇到服务器磁盘容量不足,需要在线扩容的情况。普通磁盘分区的管理方式在逻辑分区划好之后就无法改变其大小。而LVM可以实现Linux服务器下面磁盘空间的在线扩容和动态管理,相对于普通的磁盘分区有很大的灵活性。一、LVM简介    LVM是 Logical VolumeManager(逻辑卷管理)的简…

    Linux干货 2016-08-29
  • LNAMP 跨网段实现

    感谢Kason老师给我了知识!

    2017-12-31
  • N25-第八周博客作业

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示;不在线的主使用红色显示; #!/bin/bash # ping探测主机在线状态 for i in `seq 254`;do if ping -c 1 172.16.0.$i &> /dev/null;th…

    Linux干货 2017-02-23
  • Shell 编 程 之 until循 环 语 句-20160817

    Shell 编 程 之 until循 环 语 句 §·练习题: 1 每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并提示该用户退出系统? 解:解题思路:按照题意该脚本一直无限循环,一直探测用户h…

    Linux干货 2016-08-22
  • 往死里苦练脚本啊啊啊啊啊啊啊~~~~~~~~~~~~~~~~

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #脚本内容 [root@centos script]# cat week9_title1.sh  #!/bin/bash #Author …

    Linux干货 2017-02-16
  • 文本处理工具基础应用

                                                      &nbsp…

    Linux干货 2016-08-07