【发布时间】:2010-09-27 08:35:51
【问题描述】:
我有一个 .NET 网络表单,它有一个与正则表达式验证器相关联的文件上传控件。此验证器需要验证只允许上传某些文件类型(jpg、gif、doc、pdf)
执行此操作的当前正则表达式是:
^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*))(.jpg|.JPG|.gif|.GIF|.doc|.DOC|.pdf|.PDF)$
但是这似乎不起作用...谁能给我一点 reg ex 帮助?
【问题讨论】:
-
我相信你知道这一点,但是,如果有人后来发现了这个问题而没有:这个方法只会验证文件的扩展名,而不是它的实际类型。收到文件后,您必须检查其内容以确定其内容。如果您依赖名称,这是一个巨大的安全漏洞。
-
$很重要,否则你很容易被那些只是继续的文件名所吸引(即AnnaKournikova.jpg.vbs,请参阅Anna Kournikova (computer virus)。