测试bash中的固定位数?

时间:2015-08-20 17:42:36

标签: regex bash

我需要在bash脚本中查看字符串是否以下划线和日期结尾:

   _yyyymmdd

我现在不在乎验证日期,只是我有类似的东西

 abc_def_yyyymmdd

 abc_yyyymmdd

(注意名称中可能有其他下划线我不在乎;我只关心它以_yyyymmdd结尾 - 下划线后跟8位数字)。

你能协助我进行模式匹配测试吗?让我根据一条评论清楚,我不关心此时验证日期,只是字符串(文件名)以下划线和8位数结尾。

2 个答案:

答案 0 :(得分:3)

您可以使用以下正则表达式

[0-9]{8}

$将完全匹配8位数的charcaters。 {{1}}声称我们已经结束了。

答案 1 :(得分:2)

你不需要正则表达式。

case $filename in
  *_[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9] )
    echo "fine";;
  *)
    echo "fail";;
esac
相关问题