Sed正则表达式不起作用

时间:2013-10-12 15:21:04

标签: regex shell sed

以下命令不会返回任何内容,我认为我的正则表达式是好的吗?

echo 'The.Big.Bang.Theory.S07E01.VOSTFR.720p.WEB-DL.DD5.1.H.264-GKS.mkv' |\
sed -n '/The.Big.Bang.Theory*VOSTFR*720p*WEB-DL*.mkv/p'

谢谢!

3 个答案:

答案 0 :(得分:2)

  • \.. char
  • 相匹配
  • .*匹配任何 char零次或多次:

    sed -n '/The\.Big\.Bang\.Theory.*VOSTFR.*720p.*WEB-DL.*\.mkv/p'

答案 1 :(得分:0)

y*表示零个或多个y s。 R*表示零个或多个R。等

你可能想要

/The\.Big\.Bang\.Theory.*VOSTFR*720p.*WEB-DL.*\.mkv/

答案 2 :(得分:0)

像这样工作:

echo 'The.Big.Bang.Theory.S07E01.VOSTFR.720p.WEB-DL.DD5.1.H.264-GKS.mkv' |\
sed -n '/The.Big.Bang.Theory.*VOSTFR.*720p.*WEB-DL.*.mkv/p'

我忘了点:/