Ruby问题中的正则表达式

时间:2013-04-16 18:02:13

标签: ruby regex

我有一个像/4/LM2301_800.mp4这样的字符串。

我想使用正则表达式从文件名中删除/4/_800

我目前正在尝试使用strip命令。有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:3)

您的文件可以深深嵌套在目录结构中:

 path =  "/4/LM2301_800.mp4"
 path.sub(/^(\/.)*\/(.*)_\d+\.mp4/, $2)
 => "LM2301"    # you already know these are mp4 files, so you could add the suffix 

或者:

 path =  "/4/LM2301_800.mp4" 
 path.sub(/^(\/.)*\/(.*)_\d+\.(.*)/, $2+'.'+$3)
 => "LM2301.mp4"

答案 1 :(得分:2)

" /4/LM2301_800.mp4".scan(/.*\/(.*?)_\d*(.*)/).join
 => "LM2301.mp4" 
相关问题