26. december 2003 - 18:02
Der er
13 kommentarer og 1 løsning
Eksekvere al asp kode
Hej Eksperter Jeg har siddet og leget lidt med et template system og det eneste jeg mangler er faktisk en asp funktion som kan eksekvere en asp kode. Det jeg gerne vil have hjælp til er de patterns som skal bruges til at finde asp-koden i en fil.. altså alt mellem <% og %>... På forhånd tak...
Annonceindlæg fra Lenovo
26. december 2003 - 18:05
#1
"<%.*%>" (det er muligt at der skal stå "\<%.*%\>"
26. december 2003 - 18:08
#2
Det virker ikke rigtigt... Du kan se den funktion jeg bruger nu. <% Function MakeRegExp(Streng) Set regEx = New RegExp ' Create a regular expression. regEx.Pattern = "\<%.*%\>" regEx.IgnoreCase = True ' Set case insensitivity. regEx.Global = True ' Set global applicability. Set Matches = regEx.Execute(Streng) ' Execute search. For Each Match in Matches ' Iterate Matches collection. Execute(Match.Value) Next End Function %> Den første duer ikke da den ville ødelægge asp funktionen..
26. december 2003 - 18:16
#3
Jeg har lige testet det... hvad er det som ikke virker?
26. december 2003 - 18:17
#4
"<%.*%>" virker umiddelbart hos mig (med C#)
26. december 2003 - 18:18
#5
Hvis du skal have svaret med over skal du bruge: "<%(.*)%>"
26. december 2003 - 18:22
#6
Når jeg har %> med afslutter den jo aspkoden og dermed vil jeg få en HTTP-error.
26. december 2003 - 18:24
#7
Eller er det bare mig som gør det forkert ?
26. december 2003 - 18:48
#8
Løste det selv.. brugte en alternativ metode og lagde det ind som <script language="VBScript" runat="server">.. :)
26. december 2003 - 18:50
#9
huh? Hvordan gjorde du det?
26. december 2003 - 19:33
#10
<script Language="VBScript" runat="server"> Function MakeRegExp(streng) Set regEx = New RegExp ' Create a regular expression. regEx.Pattern = "<%[a-zA-z0-9\W\n]+%>" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(streng) For Each Match in Matches strengen = Match.Value strengen = Replace(strengen, "response.write", "strHTML = strHTML & ", 1,-1,1) strengen = Replace(strengen, Chr(60)&"%","") strengen = Replace(strengen, "%"&Chr(62),"") Execute(strengen) streng = Replace(streng, Match.Value, strHTML) Next MakeRegExp = streng End function </script> Sådan ser funktionen ud og den virker, dog kun på en IIS server, jeg har lidt problemer med min UNIX server... men jeg arbejder på sagen.
26. december 2003 - 20:04
#11
hehe hvad er forskellen på det og så "<%(.*)%>"? (bare nysgerig :)
27. december 2003 - 01:56
#12
Jeg kom til at tænke på om der måske var brug for nogle escapes, så asp-fortolkeren ikke tænkte her er en slut ?-)
27. december 2003 - 23:29
#13
Det det endte op med var : "<%[\w\W]+%>", som umiddelbart er det samme som "<%.*%>", det virkede bare ikke på min maskine.. Er der én af jer som kan sige mig hvordan man gør i JScript ?
27. december 2003 - 23:55
#14
Tjah ... øh ... næh ...
Kurser inden for grundlæggende programmering