三剑客学习

时间:2021-08-08
本文章向大家介绍三剑客学习,主要包括三剑客学习使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

                                                           三  剑  客

1.三剑客正则表达式

1.1 为何使用正则表达式

1.11 取出文件中正确的身份证号码
1.12 帮助我们快速过滤

1.2 正则表达式分类

1.21 基础正则表达式  (BRE basic regular expression) 

^ $ . *  [] [^]

1.22 扩展正则表达式  (ERE extended regular expression) 

| + ()  {}  ?

1.3 正则与通配符区别

1.31 通配符

作用:查找文件名
支持的命令:Linux大部分命令都支持  以.txt结尾的文件

1.32 正则

作用:在文件中过滤内容
支持的命令:三剑客sed,grep,awk  Python Java

1.4 使用正则表达式注意事项

1.41   正则表达式按照行为单位处理

1.42   正则神坑-中文符号

    ‘’ “” () 。 * …… ¥ | {}  【】
    '' ""  ()  .  * ^   $ |  {}  []

1.43   grep/egrep添加别名 

alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
cat >>/etc/profile<<EOF
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
EOF
source  /etc/profile 

1.5 基础正则

1.51 第1个符号   ^  以....开头的行 ^m

1.52 第2个符号   $  以....结尾的行  m$

1.53 第3个符号   ^$  空行  什么符号都没有

1.54 第4个符号    .  任意一个字符   不会匹配空行

1.55 第5个符号-  \  撬棍  转义字符 脱掉马甲打回原形

\n  回车换行
tr

1.56 第6个符号    *   前一个字符连续出现了0次或0次以上

1.57 第7个符号- .*  所有 任何符号 包含空行

 .*所有符号 任何符号 连续出现的字符  有多少匹配多
正则表达 所有符号 或 连续出现 会表现出贪婪性 

1.58 第8个符号-  [] [abc] 相当于是一个符号(每次匹配1个字符) 找出包含a或b或c

() 小括号 
[] 中括号 
{} 大括号  花括号 

1.59 第9个符号-  [^] [^abc] 相当于是一个符号(每次匹配1个字符) 找出除了a或除了b或除了c

1.6 扩展正则

1.61 第10个符号- + 前一个字符连续出现1次或1次以上

1.62 第11个符号-   |  或者

1.63 第12个符号- () 表示一个整体  反向引用/后向引用

1.64 第13个符号- {}  0{n,m}  前一个字符至少连续出现n次,最多连续出现了m次

1.65 第14个符号- ? 前一个字符连续出现0次或1次

1.7 基础正则与扩展正则区别

1.71 符号不同

1.72 支持的命令不同

BRE grep/sed/awk
ERE egrep/grep -E/sed -r/awk

原文地址:https://www.cnblogs.com/wujianming123/p/15114489.html