如何在正则表达式中忽略大小写?

问题描述:

我有一个ASP.NET RegularExpressionValidator检查文件扩展名。有没有一种快速的方法,我可以告诉它忽略扩展的情况下,而不必明确地将大写变体添加到我的验证表达式中?如何在正则表达式中忽略大小写?

ValidationExpression="([^.]+[.](jpg|jpeg|gif|png|wpf|doc|docx|xls|xlsx ... 
+1

可以摆脱一些在正则表达式的重复:'(JPE G | GIF | PNG | WPF | DOCX | XLSX?。 ..' – PEZ 2009-01-11 13:14:12

服务器端可以使用“(?i)”,但这不适用于客户端。有关更多讨论和解决方法,请参见here

即 “(我)......(JPG | JPEG | GIF | PNG | WPF | ...”

+1

我无法到达那个链接,我实际上得到了一个403.6 ...笑我担心吗? – PEZ 2009-01-11 13:15:52

+0

@PEZ:重试,工作正常......但也有很多其他 - 只是搜索+ RegularExpressionValidator + IgnoreCase – 2009-01-11 13:17:28

+0

@PEZ - 我会删除/可能会混淆一些浏览器;对不起... – 2009-01-11 13:18:41

在VisualBasic.NET,你可以使用RegExOptions忽略他的情况:

Dim RegexObj As New Regex("([^.]+[.](jpg|jpeg|gif))", RegexOptions.IgnoreCase) 

按照Regular Expression Options,这应该工作:

// Added LowerCase i: 
ValidationExpression="(?i:[^.]+[.](jpg|jpeg|gif|png|wpf|doc|docx|xls|xlsx ...