Linux正则表达式——扩展篇

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux正则表达式——扩展篇相关的知识,希望对你有一定的参考价值。

一、扩展正则表达式

  正则表达式的字符串表示方式依照不同的严谨程度而分为基础正则表达式和扩展正则表达式。扩展正则表达式除了一些简单的一组字符串处理之外,还可以做组的字符串处理。


二、区别与基础正则表达式的元字符

1、次数匹配

+  匹配前面的字符至少一次

{m} 匹配m次

{m,n} 至少m次,至多n次

{m,} 至少m次

{0,n} 至多n次


2、分组

() 分组

| 或者  例如:ac|bc  即ab或者bc


三、egrep

egrp 相当于grep -E 使用扩展正则表达式来构建模式

  

四、扩展正则表达式练习

1、找出netstat -tan命令执行结果以"LISTEN"或以‘"STABLISHED"结尾的的行

netstat -tan | grep --color -E "(LISTEN|ESTABLISHED)[[:space:]]*"

此题关键点:cat -E 查看结束符之前的字符串


2、找到ifconfig命令下的1-255的整数

ifconfig | grep --color=auto  -E 

"\<([1-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\>"

此题关键点:分组锚定词首词尾

 

3、匹配真正意义上的IP地址


ifconfig | grep --color=auto  -E 

"(\<([1-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\>)\.){3}(\<([1-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\>)"

此题关键点:\. .在正则表达式有特殊含义,需用转义符取消其特殊含义 


以上是关于Linux正则表达式——扩展篇的主要内容,如果未能解决你的问题,请参考以下文章

linux当中的正则/扩展表达式(grep篇)

Linux扩展正则表达式

2017-12-16Linux基础知识(17)egrep扩展正则表达式

Linux grep、egrep使用命令详解

Linux基础--grep与正则表达式

sedgawk介绍与正则表达式-----------(扩展的正则表达式)