通配符、正则表达式小计

基本通配符:

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

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

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

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

 

简单示例:

   
[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

相关推荐

  • 系统启动流程

    CentOS 5和6的启动流程服务管理Grub管理自制Linux启动排错编译安装内核 系统启动流程:  POST –> 读取BootSequence (BIOS),决定引导次序 –>读取引导设备的Bootloader(MBR grubstage1–>stage1.5/boot…

    Linux干货 2016-09-13
  • Linux基础知识之RAID

    1、什么是RAID?     多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供。2、RAID的优点?     提高IO 能力:         磁盘并行读写   &n…

    Linux干货 2016-09-01
  • LVM的管理和使用

    LVM的管理和使用

    Linux干货 2017-10-27
  • 178linux博客写作技巧

    为什么要写博客 为什么要写在178linux上 如何注册178linux 178linux的文章提审规则 178linux写文章的技巧 markdown 语法 为什么要写博客 写博客的好处不言而喻,也不做过多解释,眼过千遍不如手过一遍。知识的吸收需要很长的过程,这个过程越艰难越我们对知识的吸收程度也越好。对于找工作也有好处,侧面是自己工作能力的证明,大量学员…

    Linux干货 2016-09-06
  • lvm逻辑卷管理

    #LVM 逻辑卷管理 一、创建pv        创建pv可以在物理硬盘(裸盘上创建),MBR类型的分区(要更改分区类型为linux lvm: 8e )。GPT分区也要更改分区类型为8e00 Linux LVM 。    还可以在RAID上创建。注意要在没有数据的分区上…

    Linux干货 2016-09-02
  • Keepalived+LVS(nginx)高可用详解

    一:前言   Keepalived使用的vrrp协议方式,虚拟路由冗余协议 (Virtual Router Redundancy Protocol,简称VRRP);Keepalived的目的是模拟路由器的高可用,一般Keepalived是实现前端高可用,常用的前端高可用的组合有,就是我们常见的LVS+Keepalived、Nginx+Ke…

    Linux干货 2017-05-15

评论列表(1条)

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

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