zoukankan      html  css  js  c++  java
  • 正则表达式

    1.使用句点匹配单字符

    句点”.“可以匹配任意字符。

    例如:

    如果要匹配一个字符串,以beg开头,中间夹一个任意字符,那么可以表示为beg.n

    在ls -l命令中,可以匹配一定的权限 ...x..x..x : ls -l |grep ...x..x..x

    2.在行首以^匹配字符串或字符序列

    ^只允许在一行的开始匹配字符或单词

    例如:

    使用ls -l命令,并匹配目录:ls - l |grep ^d

    可以将各种模式混合使用: ^...4XC.... 得到类似1234XC9088的结果

    行首前4个字符为comp,匹配操作表示为 ^comp

    3.在行尾以$匹配字符串或字符

    $与^正好相反,它在行尾匹配字符串和字符,$符号放在匹配单词后

    例如:

    假定要匹配以单词trouble结尾的所有行,操作为:trouble$

    匹配所有空行,操作为:  ^$

    匹配只有一个字符的行: ^.$

    4.使用*匹配字符串中的单子或其重复序列

    使用此特殊字符匹配任意字符或字符串的重复多次表达式

    例如:

    compu*t将匹配字符u一次或多次,结果可能为computer,computing,compuuuuute

    10133*匹配到:101333,10133,1013344444

    5.使用屏蔽一个特殊字符的含义

    以下字符为特殊字符:$ . ' " * [] ^ | () + ?

    假定要匹配包含字符” . “的各行,而.代表匹配任意单字符的特殊字符,因此需要屏蔽其含义:. 

    此时,反斜杠后面的字符为普通字符,句点

    如果要匹配以*.pas结尾的所有文件,操作为:*.pas

    6.使用[]匹配一个范围或集合

    使用[]匹配特定字符串或字符串集,使用-表示一个字符串范围

    例如:

    匹配任意一个数字可以用:[0123456789]也可以用:[0-9]

    任意小写字母[a-z]

    任意字母[A-Za-z]

    7.使用{}匹配模式结果出现的次数

    使用*可匹配所有结果任意次,但是如果要指定次数,就应使用{},该模式有三种形式:

    pattern{n}:匹配模式出现n次

    pattern{n,}:匹配模式至少出现n次

    pattern{n,m}:匹配模式出现n到m次之间

    例如:

    要匹配前4个字符是数字,接下来是xx,最后4个也是数字,操作为:[0-9]{4}xx[0-9]{4}

    经常使用的正则表达式:

  • 相关阅读:
    P3162 [CQOI2012]组装
    P3161 [CQOI2012]模拟工厂
    P3158 [CQOI2011]放棋子
    P3154 [CQOI2009]循环赛
    zabbix部署监控端(server)以及页面优化
    zabbix-agent端自定义监控项(free -m)服务器内存使用率
    java应用系统运行速度慢的解决方法
    at org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmplImpl.renderNoFlush(BackupMasterStatusTm
    解决Hbase启动后,hmaster会在几秒钟后自动关闭(停掉)!!!
    全网最详细的Hadoop HA集群启动后,两个namenode都是standby的解决办法(图文详解)
  • 原文地址:https://www.cnblogs.com/xiaoyinyue/p/4917310.html
Copyright © 2011-2022 走看看