Avatar billede orca Nybegynder
28. april 2003 - 15:54 Der er 3 kommentarer og
1 løsning

Problemer med RegExp pattenr

Jeg har et pattern som burde omforme absolutte links i html til relative links. Det virker også i en del tilfælde, men i nogle test cases fejler den. Mit pattern ser således ud:

objRegExp.Pattern = "<(a|img) (href|src)=(""|').*://((.*\.)?test.com|tester.dk|" & Request("SERVER_NAME") & ")(/)(" & Session("System.CustomerName") & "/)((.*)(\....)(""|'))"

Variablen System.CustomerName kan indeholde værdier så som Udvikling|Kunde1|Kundeti osv.

Et input hvori den fejler ser således ud:
<P>manual 1 <A href="http://login2.test.com/Udvikling/files/2ali_larter.jpg">her</A><BR>manual 2 <A href="http://login2.test.com/Udvikling/files/images/1topgrafik.jpg">her</A><BR>manual 3 <A href="http://login2.test.com/Udvikling/files/cattempemne.asp">er</A></P>

Dette bliver ændret til:
<P>manual 1 <A href"="files/cattempemne.asp">er</A></P>

Det burde være:
<P>manual 1 <A href="http://files/2ali_larter.jpg">her</A><BR>manual 2 <A href="http://files/images/1topgrafik.jpg">her</A><BR>manual 3 <A href="http://files/cattempemne.asp">er</A></P>


Jeg håber der er nok info til at i kan hjælpe, ellers så råb ud.
Avatar billede orca Nybegynder
28. april 2003 - 15:55 #1
Og det er selvfølgelig i forbindelse med asp, derfor objRegExp.Pattern = ""
Avatar billede jespernaur Nybegynder
28. april 2003 - 17:40 #2
Dit problem er efter al sandsynlighed grådigheden af den sidste forekomst af .*

Den vil matche alt til og med den SIDSTE forekomst af

  (punktum)-(3*hvadsomhelst)-(gåseøjne-eller-apostrof)

Prøv at ændre til

objRegExp.Pattern = "<(a|img) (href|src)=(""|').*://((.*\.)?test.com|tester.dk|" & Request("SERVER_NAME") & ")(/)(" & Session("System.CustomerName") & "/)(([^""']*)(\....)(""|'))"

så vil den ikke kunne 'komme forbi' den første gåseøjne-apostrof.

Mvh
Jesper Naur
Avatar billede orca Nybegynder
28. april 2003 - 18:06 #3
Tak for svaret, jeg kan desværre først teste på onsdag, jeg skal nok melde tilbage og give dig point! :)
Avatar billede orca Nybegynder
30. april 2003 - 15:03 #4
Jeg takker mange gange, det virkede! :)
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