Как я могу игнорировать регистр в регулярном выражении? - PullRequest
13 голосов
/ 11 января 2009

У меня есть ASP.NET RegularExpressionValidator, который проверяет расширения файлов. Есть ли быстрый способ, которым я могу сказать, чтобы он игнорировал регистр расширения без необходимости явно добавлять варианты верхнего регистра в мое проверочное выражение?

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

Ответы [ 3 ]

24 голосов
/ 11 января 2009

На стороне сервера можно использовать «(? I)», но это не работает на стороне клиента. См. здесь для дальнейшего обсуждения и обходного пути.

т.е. "... (JPG (я?) | JPEG | GIF | PNG | МОФ | ..."

2 голосов
/ 11 января 2009

В VisualBasic.NET вы можете использовать RegExOptions, чтобы игнорировать регистр:

Dim RegexObj As New Regex("([^.]+[.](jpg|jpeg|gif))", RegexOptions.IgnoreCase)
1 голос
/ 11 января 2009

В соответствии с параметрами Regular Expression , это должно работать:

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