re.IgnoreCase=T">

ASP常用函数收集

80酷酷网    80kuku.com

  函数1.检查是否有效邮件地址FunctionCheckEmail(strEmail)
 Dimre
 Setre=NewRegExp
 re.Pattern="^[w-.]{1,}([da-zA-Z-]{1,}.){1,}[da-zA-Z-]{2,3}$"
 re.IgnoreCase=True
 CheckEmail=re.Test(strEmail)
EndFunction
2.测试变量是否为空值,空值的含义包括:变量不存在/为空,对象为Nothing,0,空数组,字符串为空FunctionIsBlank(ByRefVar)
 IsBlank=False
 SelectCaseTrue
 CaseIsObject(Var)
 IfVarIsNothingThenIsBlank=True
 CaseIsEmpty(Var),IsNull(Var)
 IsBlank=True
 CaseIsArray(Var)
 IfUBound(Var)=0ThenIsBlank=True
 CaseIsNumeric(Var)
 If(Var=0)ThenIsBlank=True
 CaseElse
 IfTrim(Var)=""ThenIsBlank=True
 EndSelect
EndFunction
3.得到浏览器目前的URLFunctionGetCurURL()
 IfRequest.ServerVariables("HTTPS")="on"Then
 GetCurrentURL="https://"
 Else
 GetCurrentURL="http://"
 EndIf
 GetCurURL=GetCurURL&Request.ServerVariables("SERVER_NAME")
 If(Request.ServerVariables("SERVER_PORT")<>80)ThenGetCurURL=GetCurURL&":"&Request.ServerVariables("SERVER_PORT")
 GetCurURL=GetCurURL&Request.ServerVariables("URL")
 If(Request.QueryString<>"")ThenGetCurURL=GetCurURL&"?"&Request.QueryString
EndFunction
4.MD5加密函数PrivateConstBITS_TO_A_BYTE=8
PrivateConstBYTES_TO_A_WORD=4
PrivateConstBITS_TO_A_WORD=32

Privatem_lOnBits(30)
Privatem_l2Power(30)
 
 m_lOnBits(0)=CLng(1)
 m_lOnBits(1)=CLng(3)
 m_lOnBits(2)=CLng(7)
 m_lOnBits(3)=CLng(15)
 m_lOnBits(4)=CLng(31)
 m_lOnBits(5)=CLng(63)
 m_lOnBits(6)=CLng(127)
 m_lOnBits(7)=CLng(255)
 m_lOnBits(8)=CLng(511)
 m_lOnBits(9)=CLng(1023)
 m_lOnBits(10)=CLng(2047)
 m_lOnBits(11)=CLng(4095)
 m_lOnBits(12)=CLng(8191)
 m_lOnBits(13)=CLng(16383)
 m_lOnBits(14)=CLng(32767)
 m_lOnBits(15)=CLng(65535)
 m_lOnBits(16)=CLng(131071)
 m_lOnBits(17)=CLng(262143)
 m_lOnBits(18)=CLng(524287)
 m_lOnBits(19)=CLng(1048575)
 m_lOnBits(20)=CLng(2097151)
 m_lOnBits(21)=CLng(4194303)
 m_lOnBits(22)=CLng(8388607)
 m_lOnBits(23)=CLng(16777215)
 m_lOnBits(24)=CLng(33554431)
 m_lOnBits(25)=CLng(67108863)
 m_lOnBits(26)=CLng(134217727)
 m_lOnBits(27)=CLng(268435455)
 m_lOnBits(28)=CLng(536870911)
 m_lOnBits(29)=CLng(1073741823)
 m_lOnBits(30)=CLng(2147483647)
 
 m_l2Power(0)=CLng(1)
 m_l2Power(1)=CLng(2)
 m_l2Power(2)=CLng(4)
 m_l2Power(3)=CLng(8)
 m_l2Power(4)=CLng(16)
 m_l2Power(5)=CLng(32)
 m_l2Power(6)=CLng(64)
 m_l2Power(7)=CLng(128)
 m_l2Power(8)=CLng(256)
 m_l2Power(9)=CLng(512)
 m_l2Power(10)=CLng(1024)
 m_l2Power(11)=CLng(2048)
 m_l2Power(12)=CLng(4096)
 m_l2Power(13)=CLng(8192)
 m_l2Power(14)=CLng(16384)
 m_l2Power(15)=CLng(32768)
 m_l2Power(16)=CLng(65536)
 m_l2Power(17)=CLng(131072)
 m_l2Power(18)=CLng(262144)
 m_l2Power(19)=CLng(524288)
 m_l2Power(20)=CLng(1048576)
 m_l2Power(21)=CLng(2097152)
 m_l2Power(22)=CLng(4194304)
 m_l2Power(23)=CLng(8388608)
 m_l2Power(24)=CLng(16777216)
 m_l2Power(25)=CLng(33554432)
 m_l2Power(26)=CLng(67108864)
 m_l2Power(27)=CLng(134217728)
 m_l2Power(28)=CLng(268435456)
 m_l2Power(29)=CLng(536870912)
 m_l2Power(30)=CLng(1073741824)

PrivateFunctionLShift(lValue,iShiftBits)
 IfiShiftBits=0Then
 LShift=lValue
 ExitFunction
 ElseIfiShiftBits=31Then
 IflValueAnd1Then
 LShift=&H80000000
 Else
 LShift=0
 EndIf
 ExitFunction
 ElseIfiShiftBits<0OriShiftBits>31Then
 Err.Raise6
 EndIf

 If(lValueAndm_l2Power(31-iShiftBits))Then
 LShift=((lValueAndm_lOnBits(31-(iShiftBits+1)))*m_l2Power(iShiftBits))Or&H80000000
 Else
 LShift=((lValueAndm_lOnBits(31-iShiftBits))*m_l2Power(iShiftBits))
 EndIf
EndFunction

PrivateFunctionRShift(lValue,iShiftBits)
 IfiShiftBits=0Then
 RShift=lValue
 ExitFunction
 ElseIfiShiftBits=31Then
 IflValueAnd&H80000000Then
 RShift=1
 Else
 RShift=0
 EndIf
 ExitFunction
 ElseIfiShiftBits<0OriShiftBits>31Then
 Err.Raise6
 EndIf
 
 RShift=(lValueAnd&H7FFFFFFE)m_l2Power(iShiftBits)

 If(lValueAnd&H80000000)Then
 RShift=(RShiftOr(&H40000000m_l2Power(iShiftBits-1)))
 EndIf
EndFunction

PrivateFunctionRotateLeft(lValue,iShiftBits)
 RotateLeft=LShift(lValue,iShiftBits)OrRShift(lValue,(32-iShiftBits))

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: