设为桌面图标  | 
站长工具文章中心下载中心
当前位置:酷代码文章中心菜鸟教程
日期:2010-10-04 16:37:51  来源:酷代码

ASP编程常用代码精选集合(九)

  1:asp使用正则替换字符串并返回

' RegReplace(vStr,vReg,vCode)
'
使用正则替换字符串并返回
'
'
#####################################################
'
'
vStr 为原始字符串
'
vReg 为正则表达式
'
vCode 为替换内容,可使用正则返回的结果 $1、$2 等
'
'
#####################################################
'
'
a = "<a href=a.txt>一个文本</a><br /><a href=b.asp>一个程序</a>"
'
Response.Write RegReplace(a,"<[^<>]*?>","") ' Return "一个文本一个程序"
'
a = "<a href=a.txt>一个文本</a><br /><img border=0 src=""x.gif""><a href=b.asp>一个程序</a>"
'
Response.Write RegReplace(a,"[\s\S]*?<img[\s\S]*?src=['""]{0,1}([^<>""]*)?['"">]{0,1}?>[\s\S]*","$1") ' Return "x.gif"

Function RegReplace(sStr,vReg,vCode)
   
Dim Re,vStr
   
Set Re = New RegExp
    Re.Pattern
= vReg
    Re.IgnoreCase
= True
    Re.Global
= True
    vStr
= sStr
   
If Re.Test(vStr) Then
        vStr
= Re.Replace(vStr,vCode)
   
End If
    RegReplace
= vStr
End Function

   2:asp转换字符串编码

' C4Code(vStr,FromCharset,ToCharset)
'
转换字符串编码
'
'
#####################################################
'
'
vStr 为原始字符串
'
FromCharset 为原始编码
'
ToCharset 为转换后编码
'
'
#####################################################
'

Function C4Code(vStr,FromCharset,ToCharset)
   
Dim File
   
Set File = server.CreateObject("Adodb.Stream")
    File.Charset
= ToCharset
    File.Mode
= 3
    File.Open
    File.Type
= 2
    File.Position
= 0
    File.WriteText vStr
    File.Position
= 0
    File.Charset
= FromCharset
    C4Code
= File.ReadText
End Function
%
>

 

   3: asp十六进制个位数字转十进制


 

<% ' Hex2Dec(vStr)
'
十六进制个位数字转十进制
'
'
#####################################################
'
'
vStr 为 0-9a-fA-F 的单个字符
'
该函数为 H2D 函数的支持函数,不推荐单独使用
'
'
#####################################################
'
'
a = Hex2Dec("A")            ' Return 10

Function Hex2Dec(vStr)
   
Dim sStr
    sStr
= UCase(vStr)
   
If IsArray(ExpStr(sStr,"[A-F0-9]{1}",",")) Then
       
If IsNumeric(vStr) Then
            Hex2Dec
= CInt(sStr)
       
Else
            Hex2Dec
= Asc(sStr) - 55
       
End If
   
Else
        Hex2Dec
= 0
   
End If
End Function

 

    4:asp八进制转十进制,此函数为 Oct 的逆运算

 O2D(vStr)
'
八进制转十进制,此函数为 Oct 的逆运算
'
'
#####################################################
'
'
vStr 为合法的八进制数字或数字字符串
'
'
#####################################################
'
'
a = O2D("12465")            ' Return 5429

Function O2D(vStr)
   
Dim sStr,intLoop
    O2D
= 0
    sStr
= CStr(vStr)
   
If IsArray(ExpStr(sStr,"^[0-7]+$",",")) Then
       
For intLoop = 1 To Len(sStr)
            O2D
= O2D * 8 + CInt(Mid(sStr,intLoop,1))
       
Next
   
End If
End Function

' H2D(vStr)
'
十六进制转十进制,此函数为 Hex 的逆运算
'
'
#####################################################
'
'
vStr 为合法的十六进制数字字符串
'
'
#####################################################
'
'
a = H2D("Fc84D6")            ' Return 16549078

Function H2D(vStr)
   
Dim sStr,intLoop
    H2D
= 0
    sStr
= UCase(vStr)
   
If IsArray(ExpStr(sStr,"^[0-9A-F]+$",",")) Then
       
For intLoop = 1 To Len(sStr)
            H2D
= H2D * 16 + Hex2Dec(Mid(sStr,intLoop,1))
       
Next
   
End If
End Function

 

   5:aspIP 地址转十六进制数字字符串

' IP2H(vStr)
'
IP 地址转十六进制数字字符串
'
'
#####################################################
'
'
vStr 为合法的 IP v4 地址,或者合法的 IP v6 地址
'
'
#####################################################
'
'
a = IP2H("220.160.4.17")            ' Return "000000000000000000000000DCA00411"
'
a = IP2H("F7F0:65:3:22::1")        ' Return "F7F00065000300220000000000000001"

Function IP2H(vStr)
   
Dim sStr,IP,intLoop
    sStr
= vStr
   
If InStr(sStr,".") > 0 Then
        IP
= Split(vStr,".")
       
For intLoop = 0 To UBound(IP)
            IP2H
= IP2H & Right("0" & Hex(CInt(IP(intLoop))),2)
       
Next
   
ElseIf InStr(sStr,":") > 0 Then
       
Do While InStr(sStr,"::") > 0 And UBound(Split(sStr,":")) < 8
            sStr
= Replace(sStr,"::",":0::")
       
Loop
        sStr
= Replace(sStr,"::",":")
        IP
= Split(sStr,":")
       
For intLoop = 0 To UBound(IP)
            IP2H
= IP2H & Right("0000" & IP(intLoop),4)
       
Next
   
End If
    IP2H
= UCase(Right("00000000000000000000000000000000" & IP2H,32))
End Function

 

更多

Tags:ASP

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
Copyright © 2010-2011 kudaima.com. All Rights Reserved .
页面执行时间:1,574.21900 毫秒
Powered by:KuDaiMa 鲁ICP备10203195号-3