shell 正则表达式

来源:互联网 发布:百度地图js api 标注 编辑:程序博客网 时间:2024/05/15 14:11

一、从头开始

echo "The book " | sed -n '/^The/p'


二、结尾

$

三、联合定位

^this is a test$

四、点字符

用于匹配除换行符之外的任何一个单一字符

五、字符类

定义一类字符,用于匹配文本模式中的某一位置

例如:

$ echo -n '/[ch]at/p' data

The cat is sleeping

That is a very nice hat


$ echo "Yes" | sed -n '/[Yy][Ee][Ss]/p'

Yes


六、否定字符类

[^ch]at


七、使用范围

[0-9][0-9][c-h][a-ch-m]


八、特殊字符类

[[:alpha:]]

blank  digit  lower  print  punct  space  upper


九、星号

在某个字符后加一个星号表示该字符必须在匹配模式的文本中不出现或出现多次


十、问号 ?

与星号类似,但  0 或 1 次


十一、加号 +

与*类似, 1 或 多次 (至少一次)


十二、大括号 {}

m:正好出现m次

m,n: 最少m次,最多n次


be{1}t    be{1,2}t


十三、管道符号 |

expr1 | expr2


如果任何一个模式与数据流文本匹配,则通过


十四、将表达式分组
$  echo "cat" | gawk '/(c|b)a(b|t)/{print $0}'

cat


0 0
原创粉丝点击