asp之GetArray提取链接地址,以$Array$分隔的代码

时间:2021-08-25 00:30:47
  1. '==================================================  
  2. '函数名:GetArray  
  3. '作  用:提取链接地址,以$Array$分隔  
  4. '参  数:ConStr ------提取地址的原字符  
  5. '参  数:StartStr ------开始字符串  
  6. '参  数:OverStr ------结束字符串  
  7. '参  数:IncluL ------是否包含StartStr  
  8. '参  数:IncluR ------是否包含OverStr  
  9. '==================================================  
  10. Function GetArray(Byval ConStr,StartStr,OverStr,IncluL,IncluR)  
  11. On Error Resume Next  
  12.    If ConStr="$False$" or ConStr="" Or IsNull(ConStr)=True or StartStr="" Or OverStr="" or  IsNull(StartStr)=True Or IsNull(OverStr)=True Then  
  13.       GetArray="$False$"  
  14.       Exit Function  
  15.    End If  
  16.    Dim TempStr,TempStr2,objRegExp,Matches,Match,Templisturl  
  17.    TempStr=""  
  18.    Set objRegExp = New Regexp   
  19.    objRegExp.IgnoreCase = True   
  20.    objRegExp.Global = True  
  21.    objRegExp.Pattern = "("&StartStr&").+?("&OverStr&")"  
  22.    Set Matches =objRegExp.Execute(ConStr)   
  23.    For Each Match in Matches  
  24.       if Templisturl =Match.Value then  
  25.       Else  
  26.       TempStr=TempStr & "$Array$" & Match.Value  
  27.       Templisturl=Match.Value  
  28.       end if  
  29.    Next   
  30.    Set Matches=nothing  
  31.  
  32.    If TempStr="" Then  
  33.       GetArray="$False$"  
  34.       Exit Function  
  35.    End If  
  36.    TempStr=Right(TempStr,Len(TempStr)-7)  
  37.    If IncluL=False then  
  38.       objRegExp.Pattern =StartStr  
  39.       TempStr=objRegExp.Replace(TempStr,"")  
  40.    End if  
  41.    If IncluR=False then  
  42.       objRegExp.Pattern =OverStr  
  43.       TempStr=objRegExp.Replace(TempStr,"")  
  44.    End if  
  45.    Set objRegExp=nothing  
  46.    Set Matches=nothing  
  47.  
  48.    TempStr=Replace(TempStr,"""","")  
  49.    TempStr=Replace(TempStr,"'","")  
  50.    TempStr=Replace(TempStr," ","")  
  51.    'TempStr=Replace(TempStr,"(","")  
  52.    'TempStr=Replace(TempStr,")","")  
  53.  
  54.    If TempStr="" then  
  55.       GetArray="$False$"  
  56.    Else  
  57.       GetArray=TempStr  
  58.    End if  
  59. End Function