aleborgMedlem sedan jan. 20013 341 inlägg Jag håller på att göra en funktion som zippar ihop en katalog och alla dess underfiler och mappar. Använder mig av http://www.icsharpcode.net/OpenSource/SharpZipLib/ och funktionen FastZip. Fastzip har en variabel som heter directoryFilter(string), den kan man skicka in t ex namnet på en mapp som man vill ska zippas och resten skippas, men den ska även kunna ta regexp. Jag skickar in att följande sökväg ska zippas: "d:\www\anvnamn", nu vill jag inte att några mappar som heter "logs" ska komma med i zippen, dvs jag vill att allt som matchar "logs" eller "mitt-domännamn.se\logs" inte ska komma med i filen.
"html" -matchar
"data" -matchar
"logs" -matchar ej
"sub.ett-domännamn.se\html" -matchar
"sub.ett-domännamn.se\data" -matchar
"sub.ett-domännamn.se\logs" -matchar ej
nån som har lust att hjälpa mig?
TravoniMedlem sedan okt. 20041 556 inlägg Varför inte instr?
If InStr(inpstr, "logs") <> 0 then ...
aleborgMedlem sedan jan. 20013 341 inlägg För att Jag måste skicka in ett mappnamn eller en regexp
aleborgMedlem sedan jan. 20013 341 inlägg Om man nu vill vidareutveckla regexpen och även förbjuda alla mappar med namnet backup, dvs både logs och backup får inte match, hur gör man då?
mozillaMedlem sedan juli 20011 084 inlägg Med | kan man ge flera olika villkor, jag tror detta borde fungera
^((?!(logs)|(backup)).)*$
aleborgMedlem sedan jan. 20013 341 inlägg Tack, men det är nått som inte funkar som det ska.
mappstrukturen ser ut så här:
-test1.se
--html
--data
--errors
--logs
-domain.se
--html
--data
--errors
--logs
-minsida.com
--html
--data
--errors
--logs
-user3888_backup
Skickar jag in "^((?!(logs)|(user3888_backup)).)*$" så kommer allt utom "user3888_backup" och samtliga "logs" mappar med, precis så jag vill ha det MEN skickar jag in "^((?!user3888_backup).)*$" så kommer endast "test1.se" samt alla undermappar i den med, resten försvinner, allt utom "user3888_backup" borde komma med.
Jesper TMedlem sedan nov. 20017 144 inlägg Då verkar det som att --logs i övermappen test1.se verkar avbryta funktionen efter som att logs inte skall vara en träff.
BTW: Det finns ett Regexp-forum också... ;)
aleborgMedlem sedan jan. 20013 341 inlägg :)
Det lustiga är att om jag skickar in "^((?!(xdfersgfd)|(user3888_backup)).)*$" så uppstår samma problem och hur kan logs mappen stoppa allt om jag skickar in "^((?!user3888_backup).)*$"
mozillaMedlem sedan juli 20011 084 inlägg En gissning är att det har och göra med att du har en logs-mapp, under varje huvudmapp. Men du har ingen backup. Varför det blir så vet jag inte. Och om man testar regexpet direkt i asp.net så fungerar det fint :)
(du kan ju enkelt testa om så är fallet genom att lägga till backup mappar i alla undermappar)
aleborgMedlem sedan jan. 20013 341 inlägg Tror jag hittade felet :r
Verkar som om den inte gillade att vissa filer, bland annat logfiler var upptagna på annat håll. Jag bytte ut FastZip till andra funktioner i #ZipLib, blev lite krångligare men fungerar bra mycket bättre. :D