在电视节目文件名的字符串中搜索正则表达式

时间:2019-06-29 07:51:33

标签: regex bash

我正在尝试测试文件名是否具有季节和易读编号,到目前为止很糟糕:

for f in "${folderToClean}"/*.mkv
do
  filenameWithoutExtension=`basename "${f%.*}"`
  echo "$filenameWithoutExtension file..."

  if [[ "$filenameWithoutExtension" =~ [sS][\d]+[Ee][\d]+ ]]; then
    echo 'pouet'
  fi
done

对于My.TV.show.S01E02.1080p.mkv这样的文件名,我没有得到任何结果……哦,男孩,我非常讨厌正则表达式……

1 个答案:

答案 0 :(得分:2)

[[ ... ]]不知道\d

替换

[sS][\d]+[Ee][\d]+

使用

[sS][0-9]+[Ee][0-9]+