通配符、正则表达式小计

基本通配符:

   
*:
匹配任意长度的任意字符;

   
?:
匹配任意的单个字符;

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

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

 

简单示例:

   
[0-9]
[a-z][0-9a-z][0-9A-Z]

 

特殊用法:

   
[[:lower:]]:
匹配小写;

   
[[:upper:]]:
匹配大写;

   
[[:alpha:]]:
匹配全部字母;

   
[[:digit:]]:
匹配数字;

   
[[:alnum:]]:
匹配全部字母和数字;

   
[[:space:]]:
匹配空白行;

   
[[:punct:]]:
匹配标点符号;

 

基本正则表达式:

    字符匹配:

       
.:
匹配任意单个字符;

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

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

 

    次数匹配:

       
*:
匹配前面的任意单个字符;

       
.*:
匹配所有字符;

       
\?:
匹配前面的字符0次或1次;其表示可有可无;

       
\+:
匹配前面的字符1次以上;其表示必须有一个;

       
\{m\}:
匹配其前面的字符m次;

       
\{m,n\}:
匹配其前面的字符m次至n次;

       
\{n,\}:
匹配其前面的字符n次以上;

       
\{,n\}:
匹配其前面的字符n次以下;

 

    位置锚定:

       
^:
行首锚定;

       
$:
行尾锚定;

       
^PATTERN$:

           
^$:
锚定空行;

           
^[[:space:]].*$:
锚定空白符的行;

 

    单词匹配:

       
\< \b:
词首锚定;

       
\> \b:
词尾锚定;

 

        注意:由非特殊字符串组成的连续字符称之为单词;

 

    词组匹配:

       
\(\):
单词匹配;其引用方法为:

           
\1:
表示第一个词组;

           
\2:
表示第二个词组;

           
\3:
表示第三个词组;

            

 

扩展正则表达式:

    次数匹配:

       
?:
匹配前面的字符0次或1次;其表示可有可无;

       
+:
匹配前面的字符最少1次;其表示必须有一个;

       
{m}:
匹配其前面的字符m次;

       
{m,n}:
匹配其前面的字符m次至n次;

       
{n,}:
匹配其前面的字符n次以上;

       
{,n}:
匹配其前面的字符n次以下;

 

    词组匹配:

       
():
单词匹配;其引用方法为:

           
\1, \2, \3

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

(0)
oranixoranix
上一篇 2017-03-15 19:09
下一篇 2017-03-16 14:07

相关推荐

  • yum函数介绍以及自建yum仓库

    一、前言     在之前介绍了yum的配置(详细请移步 http://www.178linux.com/archives/6445)。但是有没有发现一个问题,虽然我们已将仓库指向一个可用的仓库服务器,但是随着Linux的不断升级和改版,我们是否还需要不断的去修改仓库的配置文件,如果只有一台还好,那如果我们有多…

    Linux干货 2015-07-24
  • 马哥教育网络班21期+第三周课程练习

    列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登陆多次,只显示一次即可。 ~]# who|cut -d" " -f1|sort -u 2  取出最后登录当前系统的用户的相关信息。    ~]# id `last|head&nbs…

    Linux干货 2016-07-29
  • linux流程控制if,for,case,while

     Shell编程中循环命令用于特定条件下决定某些语句重复执行的控制方式,有三种常用的循环语句:for、while和until。while循环和for循环属于“当型循环”,而until属于“直到型循环”。循环控制符:break和continue控制流程转向。 选择执行:           …

    Linux干货 2017-03-25
  • 马哥教育网络班25期+第一周课程练习

    一、计算机的组成及功能     现代计算机的结构:冯诺依曼结构体系(储存程序,顺序执行),由20世纪30年代中期,美国科学家冯·诺依曼提出     冯.诺依曼结构处理器具有以下几个特点:     1:必须有一个存储器;2:必须有一个控制器;3:必须有一个运算器…

    Linux干货 2016-11-28
  • Linux下的网络配置方法(二)

    Linux下配置网络的方法还可以通过修改配置文件和使用nmcli命令来完成:     1. 修改配置文件:         网络接口的配置文件为:/etc/sysconfig/network-scripts/ifcfg-INTERFACE_…

    Linux干货 2015-12-15
  • shell脚本清空系统message日志

      1 #/bin/bash   2 #此脚本用来清空系统message日志文件   3 #author:wyf date:16/10/30   4 LOG_DIR=/var/log   5 ROOT…

    Linux干货 2016-10-30

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-20 09:21

    如果能有一些示例就更好了哦