Domanda Come posso ignorare il caso in un'espressione regolare?


Ho un ASP.NET RegularExpressionValidator che controlla le estensioni dei file. C'è un modo rapido per dirlo di ignorare il caso dell'estensione senza dover aggiungere esplicitamente le varianti maiuscole alla mia espressione di convalida?

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

13
2018-01-11 13:06


origine


risposte:


Lato server, "(? I)" può essere usato, ma questo non funziona lato client. Vedere Qui per ulteriori discussioni e soluzioni alternative.

cioè "... (? i) (jpg | jpeg | gif | png | wpf | ..."


24
2018-01-11 13:07



In VisualBasic.NET, è possibile utilizzare RegExOptions per ignorare il caso:

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

2
2018-01-11 13:11



Secondo il Opzioni di espressione regolari, questo dovrebbe funzionare:

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

1
2018-01-11 13:13