正则表达式的如何使用

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

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

      

 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

相关推荐

  • shell脚本编程初步

    shell脚本编程初步    随着课程学习的深入,我们已经学习了一些常用的命令,会去解决了一部分简单的问题,但是这不能满足复杂的工作,它可以帮助我执行自动化的常用命令、执行系统管理和故障排除、创建简单的应用程序、处理文本或文件。所以我们开始了shell脚本的编程,帮助我们更好的去完成工作。简单地说,shell编程相当于帮我们之前…

    Linux干货 2016-08-15
  • DNS基础知识

    一、DNS介绍:   1、DNS: Domain  Name Service,域名解析服务;      部署方式为分布式部署,如图所示:        2、查询类型:     递归查询:仅发出一次请求,要求对方回复最终结果&nbs…

    Linux干货 2015-05-18
  • vim常用小结

    移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾( :光标移至句首}:光标移至段落最后一个…

    Linux干货 2017-04-11
  • N25 the second week

    1.文件管理命令 1.1.cat concatenate files and print on the standard output # 正序打印文件 cat [OPTION]… [FILE]… # 常用参数 -n 编号显示每行 -E 显示每行的结束符 1.2.tac concatenat…

    Linux干货 2016-12-19
  • 在Linux中使用计算器遇到的问题

    进制转换的时候出现了与理解不同的结果

    Linux干货 2017-11-14
  • 0804正则表达式作业

    用正则表达式表示IP地址         首先来分析一下,制IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(1…

    Linux干货 2016-08-10