做网站一定要注册公司吗,微信网站与响应式网站,微信社群运营主要是做什么的,如何做英文ppt模板下载网站目录 绪论
1、正则表达式
1.1 通配符
1.2 正则表达式分类
1.3 基本正则
1.4 正则表达式中表示次数的表达式
1.5 位置锚定
1.5.1 词首锚定和词尾锚定
1.6 分组#xff08;#xff09;
1.7 逻辑或
1.8 扩展正则 绪论
正则表达式#xff1a;有一类特殊字符以及文本…目录 绪论
1、正则表达式
1.1 通配符
1.2 正则表达式分类
1.3 基本正则
1.4 正则表达式中表示次数的表达式
1.5 位置锚定
1.5.1 词首锚定和词尾锚定
1.6 分组
1.7 逻辑或
1.8 扩展正则 绪论
正则表达式有一类特殊字符以及文本字符所编写的一种模式用来处理文本当中的内容其中的一些字符不表示字符的字面含义表示控制或者通配的功能
通配符只能匹配文件名与目录名不能匹配文件的内容
1、正则表达式
1.1 通配符
只能匹配文件名与目录名不能匹配文件的内容
*匹配任意一个或者多个字符
touch 1.txt 2.txt 3.txt
ls *.txt匹配任意一个字符就是匹配单个字符
ls ?.txt[ ] 匹配范围内的任意单个字符
touch {a..z}.txt
ls [a-n].txt1.2 正则表达式分类
· 基本正则表达式
· 扩展正则表达式
1.3 基本正则
字符匹配元字符
. 匹配任意的单个字符可以是一个汉字\表示转义符\.就是一个点
egls | grep 12. 输出为123.txt
括号表示分组的意思\\就是括号
eg:[]匹配指定范围内的任意单个字符
ls | grep [0-9]
eg:大小写和数字一起匹配
ls | grep [0-9A-Za-z]
eg:[^]取反指定范围之外的
ls | grep [^A-Z]
[[:space:]]包含空格tab键换行的空格回车的空格
[[:blank:]] 空白字符空格和tab制表符
eg以rc开头的任意单个字符0-6的数字
ls /etc | grep rc[0-6]
eg只匹配以rc开头的文件.不是正则
ls /etc | grep rc\.
通配符不能完全匹配大小写 正则可以
1.4 正则表达式中表示次数的表达式 * 匹配前面的字符任意次0次也行无数次也行有多少匹配多少贪婪模式没有也行
eg
echo goole | grep go*gle 输出为google
echo ggle | grep go*gle 输出为ggle .* 匹配任意长度的字符至少要有一次不包括0次
eg:
echo goole | grep go.*gle 输出为google
echo ggle | grep go.*gle 此时匹配不到 \匹配前面的字符0次或者一次可有可无 \ 匹配前面的字符至少1次最多可以无数次
eg:
echo ggle | grep go\gle \{n\}匹配前面的字符等于n次必须连续出现才能匹配
eg:echo gogle | grep go\{|\}gle \{m,n\}匹配前面的字符最少m次最多n次 \{n\}匹配前面的字符最多n次只要出现几次出现都算除非没有只要前面的字符有都算
eg:echo ggle | grep go\{,3}gle \{n,\}匹配前面的字符至少n次 1.5 位置锚定
^ 以什么为开头在模式的左侧
egcat /etc/passwd | grep ^root
$ 以什么为结尾在模式的右侧 r$表示以r为结尾
^root$ 用于匹配整行而且整行中只有以后个root
^$ / ^[[:space:]]$ 匹配空行
1.5.1 词首锚定和词尾锚定
词首锚定 \ 或者 \b
词尾锚定 \ 或者 \b
根据\b的前后位置判断
egecho hello-123 | grep 123\b
输出为标红的hello-123
echo hello-123 | grep \bhello
输出为标红的hello-123 \root\ 表示匹配整个单词 1.6 分组
echo abccc | grep abc\{3\}
输出为abccc
\{n\}表示正好出现n次n次表示前面的字符必须要连续出现才能匹配
\{,n}只要你出现几次都算除非没有
egecho golgogle | grep \(go \)\{}\}gle
输出为gogle
\(go\)是一个租连续的go只出现一个两个不连续的go都出现
1.7 逻辑或
\|斜杠管道符表示逻辑或
echo | abc2abc | grep (1\|2\)abc 1.8 扩展正则
不用写斜杠了
需要使用grep -E 或者egrep
echo 1abc2abc | grep -E (1|2)abc
匹配邮箱号码 :
vim /opt/pipei.txt cat pipei.txt | grep -E [0-9a-z]{9,11}[0-9a-z]{2,3}\.[a-z]{2,3}