图像文件名的Java正则表达式?

时间:2011-08-18 05:40:22

标签: java regex

我必须过滤文件名以仅匹配图像(png,jpg,gif,bmp)文件,是否可以制作这样的正则表达式或者我是否必须为每种文件类型使用不同的正则表达式?它也不能包含../../或/var/app/filename.exe等路径。

4 个答案:

答案 0 :(得分:9)

我会使用这样的东西......这应该涵盖大多数情况,而不会过多地涉及疯狂的细节......

(.*/)*.+\.(png|jpg|gif|bmp|jpeg|PNG|JPG|GIF|BMP|JPEG)$

作为Java String,这个正则表达式如下所示:

"(.*/)*.+\\.(png|jpg|gif|bmp|jpeg|PNG|JPG|GIF|BMP|JPEG)$"

希望有帮助......:)

答案 1 :(得分:4)

答案 2 :(得分:2)

非常简单:

re = ".*\\.(png|jpg|gif|bmp)"

只要你不需要UPPERCASE和jpeg。 :)

答案 3 :(得分:0)

这种模式对我有用:(.*/)*.+\.(png|jpg|gif|bmp|jpeg|PNG|JPG|GIF|BMP)$