正则表达式初版

一、简介

REGEXP: Regular Expressions,由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能,类似于增强版的通配符功能,但与通配符不同,通配符功能是用来处理文件名,而正则表达式是处理文本内容中字符。

正则表达式被很多程序和开发语言所广泛支持:vim, less,grep,sed,awk, nginx,mysql 等     

主要用来匹配字符串(命令结果,文本内容)

通配符匹配文件(而且是已存在的文件)

--- 基本正则表达式

--- 扩展正则表达式

可以使用

man 7 regex
可以使用 man手册帮助

1元字符(字符匹配)

元字符:

注册用户   数字字母组成        20字符


[0-9a-zA-Z]次数 

单个字符出现的次数

echo      ”用户名“     |    grep   [0-9a-zA-Z]次数 (20个及以下) 

.   匹配任意单个字符,可以是一个汉字  
[]   匹配指定范围内的任意单个字符,示例:[zhou]   [0-9]   []   [a-zA-Z]  [[:alpha:] ]==[0-9]   [[0-9a-zA-Z]]= [:alnum:]
[^] 匹配指定范围外的任意单个字符,示例:[^zhou] [^a.z] [a.z]
[:alnum:] 字母和数字
[:alpha:] 代表任何英文大小写字符,亦即 A-Z, a-z
[:lower:] 小写字母,示例:[[:lower:]],相当于[a-z]
[:upper:] 大写字母
[:blank:] 空白字符(空格和制表符)
[:space:] 包括空格、制表符 (水平和垂直)、换行符、回车符等各种类型的空白,比[:blank:]包含的范围广
[:cntrl:] 不可打印的控制字符(退格、删除、警铃...)
[:digit:] 十进制数字
[:xdigit:]十六进制数字
[:graph:] 可打印的非空白字符
[:print:] 可打印字符
[:punct:] 标点符号
\w #匹配单词构成部分,等价于[_[:alnum:]]
\W #匹配非单词构成部分,等价于[^_[:alnum:]]
\S     #匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。
\s     #匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。注意Unicode 正则表达式会匹配全角空格符

1.1元字符点(.)

.在方框中,只代表.本身

.不在方框中,就代表任意字符

正则表达式初版_第1张图片

正则表达式初版_第2张图片

1.2不加 " ",会出错

正则表达式初版_第3张图片

正则表达式初版_第4张图片

1.3过滤空格

正则表达式初版_第5张图片

1.4*的作用

*代表,前面字符出现0次和无数次,都可以匹配

正则表达式初版_第6张图片

1.5.*的作用

.*代表,前面字符可以出现无数次,但出现0次,不能匹配;最少出现1次

正则表达式初版_第7张图片

1.6\?的作用

\?代表只能匹配,0次和1次,两次及以上就不能匹配了

正则表达式初版_第8张图片

1.7\+的作用

\+代表,一次和无数次,0次不行

正则表达式初版_第9张图片

1.8\{n\}的作用

\{n\} ###匹配前面的字符n次

正则表达式初版_第10张图片

1.9\{m,n\}

\{m,n\} ###匹配前面的字符至少m次,至多n次

正则表达式初版_第11张图片

1.10结合命令

正则表达式初版_第12张图片

正则表达式初版_第13张图片

1.表示QQ号

正则表达式初版_第14张图片

2.手机号码

正则表达式初版_第15张图片

正则表达式初版_第16张图片

3.邮箱

正则表达式初版_第17张图片

正则表达式初版_第18张图片

4.\b  \b

正则表达式初版_第19张图片

5.匹配真正的字符

正则表达式初版_第20张图片

 

你可能感兴趣的:(正则表达式,网络,服务器,运维,linux,centos)