如果已知扩展名为

时间:2017-03-30 15:44:09

标签: c# regex notepad++

我想出了一个正则表达式来找到项目中的所有图像。

(\/|\\)(.*)\.(gif|png|jpg|jpeg)

我现在要做的是找到扩展名(gif | jpg | etc ...)然后捕获该匹配之前的单词(即文件名)。

我完全坚持如何构建一个后备捕获组(??)

我正在做的是查看一个大型Web项目,查找已经在代码中实际使用过的所有图像,然后我将清理图像目录以查找不再引用的图像。

1 个答案:

答案 0 :(得分:2)

使用Npp,您可以搜索:

([^\/\\]+)(?=\.(gif|png|jpg|jpeg))

([^\/\\]+)(?=\.(?:gif|png|jpe?g))

匹配文件名。

根据评论,您可以使用以下命令进行查找/替换:

  • 控制 + ħ
  • 找到:^.*?([^\/\\]+\.(?:gif|png|jpe?g)).*?$
  • 替换为:$1
  • 全部替换

这将删除除文件名+扩展名之外的所有内容。