Lea*_*ing 1 c# regex asp.net webforms
我使用fileupload控件上传文件,同时使用正则表达式验证文件名.
我想要上传以下文件扩展名,以便.doc, .docx, .pdf
我使用以下命令来查看有效文件名
ValidationExpression="[a-zA-Z\\].*(.doc|.DOC|.docx|.DOCX|.pdf|.PDF)$"
<asp:FileUpload ID="FileUpload1" runat="server" CssClass="fileUpload" />
<asp:RequiredFieldValidator ID="ValidateF1" runat="server" ErrorMessage="*" CssClass="row-validate" ControlToValidate="FileUpload1"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="ValidateEx" runat="server" ValidationExpression="[a-zA-Z\\].*(.doc|.DOC|.docx|.DOCX|.pdf|.PDF)$" ControlToValidate="FileUpload1" ValidationGroup="Careers" ErrorMessage="*"></asp:RegularExpressionValidator>
Run Code Online (Sandbox Code Playgroud)
它无法验证以下文件名
(K)+J01461+abced+high+En+(HR)(1).pdf
我不知道为什么它失败了 ABC_COMPANY_Privacy_v4.0_123456(5).pdf
我使用错误的验证表达式.我想允许任何带有扩展名的文件名,如上所述.
试试这个
ValidationExpression="^.*\.(doc|DOC|docx|DOCX|pdf|PDF)$"
Run Code Online (Sandbox Code Playgroud)