【Regular Expression】RE分类及案例

来源:互联网 发布:中国工业企业数据库 编辑:程序博客网 时间:2024/06/14 20:30
背景知识

正则表达式分为三类:基础正则表达式、扩展正则表达式、Perl正则表达式(Perl内建)

通俗来说,这三个一个比一个强大,支持的规则匹配字符更多

1.匹配IP

ip addr | grep -P '\b(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(2[0-5]{2}))\.){3}((\d{1,2})|(1\d{2})|(2[0-4]\d)|(2[0-5]{2}))\b'
ip addr 获得本机IP
grep -P 使用Perl正则表达式 不带 -P 参数时,表示使用 基础正则表达式
\b 位置匹配,匹配字符串边界
\d 是[0-9]的另一个写法
( ) 括号 是 使用了 子表达式
{ } 代表 匹配到的字符串的重复次数
| 或者


2.匹配MAC地址 -P 表示使用Perl正则表达式
ip addr | grep -P '([0-9A-Fa-f]{2}:){5}([0-9A-Fa-f]{2})'
 
常握 Linux 下几种常用文本工具的特点,对于我们更好的使用正则表达式是很有帮助的grep , egrep 正则表达式特点:1)grep 支持:BREs、EREs、PREs 正则表达式grep 指令后不跟任何参数,则表示要使用 ”BREs“ grep 指令后跟 ”-E" 参数,则表示要使用 “EREs“grep 指令后跟 “-P" 参数,则表示要使用 “PREs" 2)egrep 支持:EREs、PREs 正则表达式egrep 指令后不跟任何参数,则表示要使用 “EREs”egrep 指令后跟 “-P" 参数,则表示要使用 “PREs" 3)grep 与 egrep 正则匹配文件,处理文件方法a. grep 与 egrep 的处理对象:文本文件b. grep 与 egrep 的处理过程:查找文本文件中是否含要查找的 “关键字”(关键字可以是正则表达式) ,如果含有要查找的 ”关健字“,那么默认返回该文本文件中包含该”关健字“的该行的内容,并在标准输出中显示出来,除非使用了“>" 重定向符号,c. grep 与 egrep 在处理文本文件时,是按行处理的 sed 正则表达式特点1)sed 文本工具支持:BREs、EREssed 指令默认是使用"BREs"sed 命令参数 “-r ” ,则表示要使用“EREs"2)sed 功能与作用a. sed 处理的对象:文本文件b. sed 处理操作:对文本文件的内容进行 --- 查找、替换、删除、增加等操作c. sed 在处理文本文件的时候,也是按行处理的Awk(gawk)正则表达式特点1)Awk 文本工具支持:EREsawk 指令默认是使用 “EREs"2)Awk 文本工具处理文本的特点a. awk 处理的对象:文本文件b. awk 处理操作:主要是对列进行操作

 

原创粉丝点击