Avatar billede nicklasb Nybegynder
03. juni 2008 - 10:19 Der er 6 kommentarer og
1 løsning

Match alle andre stier

Jeg har en liste af stier, til filer i et filsystem. Stierne ser ud som følger:

filer/aabenmappe/sti/til/fil.ext
filer/aabenmappe/sti/til/fil2.ext
filer/lukketmappe/sti/til/fil.ext
filer/andenlukketmappe/sti/til/fil.ext

For at matche den åbne mappe, bruger jeg noget lignende
^filer\/aabenmappe\/(.*)$

Nu vil jeg dog gerne matche alt ANDET end den åbne mappe. Så ligegyldigt hvad der står efter "filer/" skal det matche, på nær hvis det starter med "aabenmappe/".

Hvordan laver jeg mit "alt andet" match?

/Nicklas
Avatar billede nielle Nybegynder
03. juni 2008 - 11:39 #1
Altså, det kan godt klares med en regexp, men det vil nu nok være en mere elegant løsning simpelthen at have et ekstra if-tjek og så teste - med strpos - om stien indeholder "aabenmappe" eller ej.
Avatar billede nicklasb Nybegynder
03. juni 2008 - 19:18 #2
Tak for din kommentar.

Udtrykket skal bruges i forbindelse med noget RewriteRule af en Apache server. Jeg har skrevet en regel der hedder

RewriteRule ^filer\/aabenmappe\/(.*)$ / [QSA,L]

Da bliver alle forespørgsler på en hvilket som helst sti, startende med filer/aabenmappe/ omdiregeret til roden. Jeg vil dog gerne have det omvendt, sådan at det "kun" er alle stier _ikke_ startende med filer/aabenmappe/ der bliver omdiregeret.
Avatar billede nielle Nybegynder
04. juni 2008 - 06:44 #3
Jeg ved ikke om Apache understøtter lige den slags regesp men ellers kunne det f.eks. gøres vha. "Negative Lookahead" :

^((?!/aabenmappe)*$
Avatar billede nielle Nybegynder
09. juni 2008 - 13:04 #4
Har du fået kigget på det?
Avatar billede nicklasb Nybegynder
13. juli 2008 - 12:01 #5
Kan ikke få det til at virke - men smid et svar på vi kan få lukket tråden.
Avatar billede nielle Nybegynder
13. juli 2008 - 13:32 #6
Jeg vil da gerne hjælpe dig med at få det til at virke ... men du må jo altså give noget respons hvis det skal kunne lade sig gøre.
Avatar billede nielle Nybegynder
07. september 2008 - 09:19 #7
Lidt respons ville være rart ... om ikke andet så mangler du at acceptere mit svar :^)
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
Kategori
Kurser inden for grundlæggende programmering

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