加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式

发布时间:2020-12-14 05:34:26 所属栏目:百科 来源:网络整理
导读:正则表达式 1.正则表达式单字符 单字符种类 描述 例子 特定字符 某个具体的字符 ‘1’,a 范围内字符 单个字符[] 数字字符:[0-9],[259] 小写字符:[a-z] 反向字符: [ ^0-9 ] 任意字符 代表任何一个字符 ‘.‘ [[email?protected] tmp]# grep '1' passwd.bak

正则表达式

1.正则表达式单字符

单字符种类 描述 例子
特定字符 某个具体的字符 ‘1’,a
范围内字符 单个字符[] 数字字符:[0-9],[259]
小写字符:[a-z]
反向字符: [ ^0-9 ]
任意字符 代表任何一个字符 ‘.‘
[[email?protected] tmp]# grep '1' passwd.bak  #查找有'1' 的行
[[email?protected] tmp]# grep '[A-Z]' passwd.bak   #查找所有的大写字母
[[email?protected] tmp]# grep '[a-zA-Z]' passwd.bak   #查找所有的字母
[[email?protected] tmp]# grep '[,:_/]' passwd.bak     #查找特殊字符
[[email?protected] tmp]# grep '[^0-9]'  passwd.bak    #查找不包括数字的行
[[email?protected] tmp]# grep '.' passwd.bak         #查找.这个字符,转义了

2:其它字符的表示

边界字符:头尾字符:

^ : ^root ------以root开头

$:false$ ------以false结尾

^$: 代表空行

[[email?protected] tmp]# grep '^root' passwd.bak
[[email?protected] tmp]# grep 'false$' passwd.bak

3:正则表达式的其它字符

*元字符:代表普通字符或者其它字符

元字符 描述
w 小写 匹配任何字类字符,包括下划线([A-Z a-z0-9])
W 大写 匹配任何非字类字符,包括下划线([ ^A-Z a-z0-9])
b 代表单词的分隔
[[email?protected] tmp]# grep 'x' passwd.bak     #会匹配x【密码】字段和单词中的x
[[email?protected] tmp]# grep 'bxb' passwd.bak      #把x当成一个单词,不会匹配单词中的x

4:正则表达式的字符组合

类型 表述 例子
字符串 ‘root‘,‘1000‘,‘m..c‘,‘[ A-Z] [ a-z] ‘ ‘ [ 0-9 ] [ 0-9 ] ‘
[[email?protected] tmp]# grep '1000' passwd.bak 
oracle:x:1000:1000:oracle:/home/oracle:/bin/bash
[[email?protected] tmp]# grep '[A-Z][a-z]'  passwd.bak  #匹配一个大写紧挨着一个小写---共2位字符
[[email?protected] tmp]# grep '[0-9][0-9]'  passwd.bak  #匹配紧挨着的2位数字---共2位并且贪婪匹配

5:重复

?:0次或者1次匹配前面的字符或者子表达式

+:1次或多次匹配前面的字符或者子表达式

*:0次或多次匹配前面的字符或者子表达式

[[email?protected] tmp]# grep '(mail)?' passwd.bak    #注意?,+ 才是匹配重复

{n,m}:重复特定次数

?:{0,1}

+:{1,}

*:{0,}

[[email?protected] tmp]# grep '[0-9]{2,3}'  passwd.bak    #:重复2到3次,除了()之外,其它都要转义{}

6:任意字符串

.* :代表任意字符串 eg: ^.* m.*c --------代表m开头c结尾,任意长度

? m..c-----代表m开头c结尾,但只有4位长度


7:逻辑的表示

|:‘/bin(false|true)’

常见匹配模式:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读