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}

    经常使用的正则表达式:

  • 相关阅读:
    JVM Inline
    Lattice
    编译技术
    sql-server-on-linux
    concurrency 方面的books
    Linux debugger lldb
    javaperformanceoptimization
    Understanding The Linux Virtual Memory Manager
    web performance tu ning
    linux io architecture
  • 原文地址:https://www.cnblogs.com/xiaoyinyue/p/4917310.html
Copyright © 2011-2022 走看看