欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

shell编程:expr正则匹配心得1

程序员文章站 2022-05-24 18:51:21
...

从字符串“thread1.20110325.log”中取出“20110325”,也就是8位连续数字

 

 

filename="thread1.20110325.log"
echo `expr "$filename" : '.*\([0-9]\{8\}\).*'`

 

其中正则为    .*\([0-9]\{8\}\).*

 

注意两侧的 .* :

1. 如果左边没有 .* 则相当于有 ,也就是相当于开头必须为数字

2. 如果右边没有 .* 则相当于有 ,也就是相当于结尾必须为数字

 

这两点与我们平常用的正则不一样,不注意就匹配不上