2019-03-19 课堂笔记 正则表达式的介绍以及三剑客grep扩展sed命令

学习方法 :3W1H

1.what什么是正则表达式?

作用和特殊字符一样。

正则表达式是为处理大量的字符串及文本而定义的一套规则和方法

2.why 为什么用?

提高效率,快速获取到想要的内容

3.where  在哪用?

适用于三剑客grep(egrep),sed,awk

4.how  怎么用?

实践来讲解

易混淆事项

1.   和通配符区别。

2.   开发正则,一般是Perl兼容正则表达式。

3.   Linux系统三剑客正则表达式


环境准备

export LC_ALL=C

mkdir ~/test -p

cat >~/test/oldboy.txt<

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

our site is[if !vml]

http://www.oldboyedu.com

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

EOF



分类

1.   BRE 基本正则表达式 例:grep

^ 尖角号 以…开头,^oldboy 以oldboy开头

$ 美元符 以…结尾,oldboy$以oldboy结尾

^$ 空行

. 匹配任意一个且只有一个字符,和通配符?一样

\ 让有意义的字符还原本义

* 重复前面字符0次或多次

.* 所有内容

^.* 以任意字符开头

.*$ 以任意0个或多个字符结尾

[abc] 匹配[]内任意一个字符

[^abc] 匹配不包含^后的任意一个字符

2.   ERE  扩展的正则表达式 例:egrep

+ 匹配前一个字符1次或1次以上

[:/]+ 匹配:或/ 一次或一次以上

?匹配一个字符0次或一次

a{n,m}  匹配前一个字符最少n次,最多m次

a{n,} 匹配前一个字符最少n次

a{n} 匹配前一个字符正好n次

a{,m}    匹配前一个字符最多m次

3.   特殊预定义中括号表达式:



4.   元字符表达式

\b 匹配单词边界 类似grep -w

\d 匹配单个数字字符  需用grep -P


三剑客

sed  流编辑器

      -n取消命令的默认输出

      -i直接修改文件内容,而不是输出到终端

sed 的内置命令字符

s   替换

g    全局

p   打印

d    删除

元字符:\b匹配单词边界 类似grep -w

        \d匹配单个数字字符 需用grep -p

你可能感兴趣的:(2019-03-19 课堂笔记 正则表达式的介绍以及三剑客grep扩展sed命令)