几个ASP好用的自定义函数

王朝asp·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

cLeft(string, length) 返回指定数目的从字符串的左边算起的字符,区分单双字节。

如:

Dim MyString, LeftString

MyString = "文字测试VBSCript"

LeftString = cLeft(MyString, 10)

返回 "文字测试VB"。

MyRandc(n) 生成随机字符,n为字符的个数

如:

response.write MyRandn(10)

输出10个随机字符

MyRandn(n) 生成随机数字,n为数字的个数

如:

response.write MyRandn(10)

输出10个随机数字

formatQueryStr(str) 格式化sql中的like字符串.

如:

q = Request("q")

q = formatQueryStr(q)

sql = "select * from [table] where aa like '%"& q &"%'"

GetRnd(min,max)返回min - max之间的一个随机数

如:

response.write GetRnd(100,200)

输出大于100到200之间的一个随机数

函数代码:

function cLeft(str,n)

dim str1,str2,alln,Islefted

str2 = ""

alln = 0

str1 = str

Islefted = false

if isnull(str) then

cleft = ""

exit function

end if

for i = 1 to len(str1)

nowstr = mid(str1,i,1)

if asc(nowstr)<0 then

alln = alln + 2

else

alln = alln + 1

end if

if (alln<=n) then

str2 = str2 & nowstr

else

Islefted = true

exit for

end if

next

if Islefted then

str2 = str2 & ".."

end if

cleft = str2

end function

function MyRandc(n) '生成随机字符,n为字符的个数

dim thechr

thechr = ""

for i=1 to n

dim zNum,zNum2

Randomize

zNum = cint(25*Rnd)

zNum2 = cint(10*Rnd)

if zNum2 mod 2 = 0 then

zNum = zNum + 97

else

zNum = zNum + 65

end if

thechr = thechr & chr(zNum)

next

MyRandc = thechr

end function

function MyRandn(n) '生成随机数字,n为数字的个数

dim thechr

thechr = ""

for i=1 to n

dim zNum,zNum2

Randomize

zNum = cint(9*Rnd)

zNum = zNum + 48

thechr = thechr & chr(zNum)

next

MyRandn = thechr

end function

function formatQueryStr(str) '格式化sql中的like字符串

dim nstr

nstr = str

nstr = replace(nstr,chr(0),"")

nstr = replace(nstr,"'","''")

nstr = replace(nstr,"[","[[]")

nstr = replace(nstr,"%","[%]")

formatQueryStr = nstr

end function

function GetRnd(min,max)

Randomize

GetRnd = Int((max - min + 1) * Rnd + min)

end function

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航