[ASP] server.URLencode icm reg exp

Pagina: 1
Acties:

  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

Topicstarter
Hallo,

Ik heb een reguliere expressie:

VBScript:
1
2
3
4
5
6
7
8
9
    Dim expr
    Set expr = New RegExp

    expr.Global = True

    expr.Pattern =  "\[url=(.*?)\](.*?)\\[/url\]"
    toCheck = expr.Replace(toCheck,"<a href=""$1"" target=""_blank"" class=""text"">$2</a>")

    Set expr = Nothing


Nu wil ik dat er op $1 een server.urlEncode wordt gedaan, dit wil echter niet.

Ik heb het volgende geprobeert:

VBScript:
1
toCheck = expr.Replace(toCheck,"<a href=""" & server.urlEncode($1) & """ target=""_blank"" class=""text"">$2</a>")


VBScript:
1
toCheck = expr.Replace(toCheck,"<a href=""" & server.urlEncode("$1") & """ target=""_blank"" class=""text"">$2</a>")



Is er een manier om dit makkelijk te doen?

Of is het niet mogelijk om dit direct te doen en zou ik de waarde van $1 eerst in een andere var moeten zetten en daarna weer terug in de url?

Google wilde niet helpen, kreeg erg veel irrelevante resultaten.

Huur mij in als freelance SEO consultant!


  • Skaah
  • Registratie: Juni 2001
  • Niet online
Ben geen VBScript hoofd, maar uit de Windows Script 5.6:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Regular Expression (RegExp) Object
See Also
Match Object | Matches Collection
Requirements
Version 5 
Provides simple regular expression support. 

Remarks
The following code illustrates the use of the RegExp object.

Function RegExpTest(patrn, strng)
   Dim regEx, Match, Matches   ' Create variable.
   Set regEx = New RegExp   ' Create a regular expression.
   regEx.Pattern = patrn   ' Set pattern.
   regEx.IgnoreCase = True   ' Set case insensitivity.
   regEx.Global = True   ' Set global applicability.
[b]   Set Matches = regEx.Execute(strng)   ' Execute search.[/b[
   For Each Match in Matches   ' Iterate Matches collection.
      RetStr = RetStr & "Match found at position "
      RetStr = RetStr & Match.FirstIndex & ". Match Value is '"
      RetStr = RetStr & Match.Value & "'." & vbCRLF
   Next
   RegExpTest = RetStr
End Function
MsgBox(RegExpTest("is.", "IS1 is2 IS3 is4"))