2009-11-03 41 views
0

我试图上传图像到文件夹。这里我只需要上传像 .JPEG | .jpeg | GIF | .gif | .PNG | .png | bmp | .BMP什么是验证图像所需的正则表达式

这是我们应该在这里写的表达, thier文件,而不是这个

任何解决方案将是巨大的 谢谢

回答

4

一般来说,这是一个坏主意,但......

/(jpg|gif|bmp|png)$/ 

运行与你使用,让任何语言表达当然,你会让事情变得非常糟糕itive。

我说这是一个坏主意,因为您最好在上传发生后检查文件中的实际数据。我可以将文件重命名为任何我想要的内容并将其上传到您的网站。

ETA:正斜线在您的语言中可能是可选的。

+0

+1指出洞大到足以驱动卡车通过:-)我也看过.jpeg文件,以及是否要覆盖这些是一个品味的问题 - 我宁愿将文件名检查完全按照您的建议进行检查。 – paxdiablo 2009-11-03 03:29:23

1

我认为它应该工作:

\ W *(JPG | JPEG | GIF | PNG | BMP)$ 利用这一点,你需要在asp.net使用IGNORECASE。

\ w都是字母数字字符,后跟一个圆点(由于是特殊字符而转义)。然后你的一个扩展。

但请记住:文件不是由它们的扩展名标识的,而是由它们的内容标识的。你可以使用类似linux的“文件”工具来识别文件的类型。我不知道是否有类似的存在的asp.net