Avatar billede milandt Nybegynder
30. december 2008 - 15:58 Der er 4 kommentarer og
1 løsning

RegEx case insensitive

Jeg har en række regex der bruges til noget url-rewriting i et ISAPI filter. De kunne f.eks se sådan her ud:

^/conditions/?$

som bliver oversat til /conditions.aspx

Kan man gøre et RegEx eller dele af det case insensitive således at både /conditions og /Conditions og /CoNdItIoNs matcher?

Ville være ked af at skrive [c|C][o|O][n|N]... i alle mine RegEx.

Jeg har ikke selv kodet det ISAPI filter der benyttes, så det kan jeg ikke ændre på.

På forhånd tak for hjælpen.
Avatar billede arne_v Ekspert
30. december 2008 - 19:58 #1
Alle eller stort set alle regex implementering tillader case insensitiv sammenligning.

ASP:

re.IgnoreCase = True

PHP:

preg_...('.../i', ...)

.NET:

new Regex("...", RegexOptions.IgnoreCase)

Java:

Pattern.compile("...", Pattern.CASE_INSENSITIVE)

Hvis du poster lidt kode, så er det nok nemmere at sige præcist hvordan i din kontekst.
Avatar billede milandt Nybegynder
30. december 2008 - 20:34 #2
Problemet er at mine regex står i en ini fil, og læses af ISAPI filteret som jeg ikke har kodet, og i øvrigt er lavet i c++. Jeg har heller ikke kilden til filteret.

Jeg ledte efter en måde at angive i selve RegEx stregen at hele eller dele af det var case insensitive.

Hvis ISAPI filteret ikke giver mulighed for case insensitivity har jeg så tabt?
Avatar billede arne_v Ekspert
30. december 2008 - 20:46 #3
Som det ses ovenfor så er det kun i 1 ud af de 4 sprog at det kan angives i selve regex.

Er der noget dokumentation af det ini fil format ?
Avatar billede milandt Nybegynder
30. december 2008 - 20:58 #4
mm, ja - og ved nærmere granskning er der faktisk et flag der kan sættes der gør at ISAPI filteret er ligeglad med case.

Havde ikke tænkt på den mulighed, mente at det da nok skulle være muligt at angive det direkte i regex.

Tak for hjælpen.

Et svar? :)
Avatar billede arne_v Ekspert
30. december 2008 - 21:02 #5
kommer her
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester