ASP实用函数库大全 浏览代码 脚本代码 IT人家

来源:百度文库 编辑:神马文学网 时间:2024/04/27 22:33:29
ASP实用函数库大全http://www.webkey.cn/ 2007-4-10 2:28:09 IT人家整理

开新窗口(view plain)复制(copy to clipboard)打印(print)关于(about)

  1. <%   
  2. '判断文件名是否合法   
  3. Function isFilename(aFilename)   
  4. Dim sErrorStr,iNameLength,i   
  5. isFilename=TRUE   
  6. sErrorStr=Array("/","\",":","*","?","""","<",">","|")  
  7. iNameLength=Len(aFilename)  
  8. If iNameLength<1 Or iNameLength=null Then  
  9. isFilename=FALSE  
  10. Else  
  11. For i=0 To 8  
  12. If instr(aFilename,sErrorStr(i)) Then  
  13. isFilename=FALSE  
  14. End If  
  15. Next  
  16. End If  
  17. End Function  
  18. '去掉字符串头尾的连续的回车和空格  
  19. function trimVBcrlf(str)  
  20. trimVBcrlf=rtrimVBcrlf(ltrimVBcrlf(str))  
  21. end function  
  22. '去掉字符串开头的连续的回车和空格  
  23. function ltrimVBcrlf(str)  
  24. dim pos,isBlankChar  
  25. pos=1  
  26. isBlankChar=true  
  27. while isBlankChar  
  28. if mid(str,pos,1)=" " then  
  29. pos=pos+1  
  30. elseif mid(str,pos,2)=VBcrlf then  
  31. pos=pos+2  
  32. else  
  33. isBlankChar=false  
  34. end if  
  35. wend  
  36. ltrimVBcrlf=right(str,len(str)-pos+1)  
  37. end function  
  38. '去掉字符串末尾的连续的回车和空格  
  39. function rtrimVBcrlf(str)  
  40. dim pos,isBlankChar  
  41. pos=len(str)  
  42. isBlankChar=true  
  43. while isBlankChar and pos>=2  
  44. if mid(str,pos,1)=" " then  
  45. pos=pos-1  
  46. elseif mid(str,pos-1,2)=VBcrlf then  
  47. pos=pos-2  
  48. else  
  49. isBlankChar=false  
  50. end if  
  51. wend  
  52. rtrimVBcrlf=rtrim(left(str,pos))  
  53. end function  
  54. '判断Email是否有效,返回1表示正确  
  55. Function isEmail(aEmail)  
  56. Dim iLocat,v,iLength,i,checkletter  
  57. If instr(aEmail,"@") = 0 Or instr(aEmail,".") = 0 Then  
  58. isEmail=0  
  59. EXIT FUNCTION  
  60. End If  
  61. iLocat=instr(aEmail,"@")  
  62. If instr(iLocat,aEmail,".")=0 Or instr(iLocat+1,aEmail,"@")>0 Then  
  63. isEmail=0  
  64. EXIT FUNCTION  
  65. End If  
  66. If left(aEmail,1)="." Or right(aEmail,1)="." Or left(aEmail,1)="@" Or right(aEmail,1)="@" Then  
  67. isEmail=0  
  68. EXIT FUNCTION  
  69. End If  
  70. v="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-.@"  
  71. iLength=len(aEmail)  
  72. For i=1 To iLength  
  73. checkletter=mid(aEmail,i,1)  
  74. If instr(v,checkletter)=0 Then  
  75. isEmail=0  
  76. EXIT FUNCTION  
  77. End If  
  78. Next  
  79. isEmail=1  
  80. End Function  
  81. '测试用:显示服务器信息  
  82. Sub showServer  
  83. Dim name  
  84. Response.write ""  
  85. for each name in request.servervariables  
  86. Response.write ""  
  87. Response.write ""&name&""  
  88. Response.write ""&request.servervariables(name)&"
    "  
  89. Response.write ""  
  90. next  
  91. Response.write ""  
  92. End Sub  
  93. '测试用:显示Rs结果集以及字段名称  
  94. Sub showRs(rs)  
  95. Dim strTable,whatever  
  96. Response.write "
    "  
  97. for each whatever in rs.fields  
  98. response.write "
  99. "  
  100. next  
  101. strTable = "
  102. " & whatever.name & "
    "&rs.GetString(,,"","
    "," ") &"
    "  
  103. Response.Write(strTable)  
  104. End Sub  
  105. '用HTML格式显示文本  
  106. function HTMLEncode(fString)  
  107. if not isnull(fString) then  
  108. fString = replace(fString, ">", ">")  
  109. fString = replace(fString, "<", "<")  
  110. fString = Replace(fString, CHR(32), " ")  
  111. fString = Replace(fString, CHR(34), """)   
  112. fString = Replace(fString, CHR(39), "'")   
  113. fString = Replace(fString, CHR(13), "")   
  114. fString = Replace(fString, CHR(10) & CHR(10), "

     ")   

  115. fString = Replace(fString, CHR(10), "
     ")   
  116. HTMLEncode = fString   
  117. end if   
  118. end function   
  119. '测试用:显示调试错误信息   
  120. Sub showError   
  121. Dim sErrMsg   
  122. sErrMsg=Err.Source&" "&Err.Des cription   
  123. Response.write "
    "&sErrMsg&"
    "  
  124. Err.clear   
  125. End Sub  
  126. '显示文字计数器   
  127. Sub showCounter   
  128. Dim fs,outfile,filename,count   
  129. filename=server.mappath("count.txt")   
  130. Set fs = CreateObject("s cripting.FileSystemObject")   
  131. If fs.fileExists(filename) Then  
  132. Set outfile=fs.openTextFile(filename,1)   
  133. count=outfile.readline   
  134. count=count+1   
  135. Response.write "
    浏览人次:"&count&"
    "  
  136. outfile.close   
  137. Set outfile=fs.CreateTextFile(filename)   
  138. outfile.writeline(count)   
  139. Else  
  140. Set outfile=fs.openTextFile(filename,8,TRUE)   
  141. count=0   
  142. outfile.writeline(count)   
  143. END IF   
  144. outfile.close   
  145. set fs=nothing   
  146. End Sub  
  147. %>   
  148. Array()   
  149.  FUNCTION: 返回一个数组   
  150.  SYNTAX: Array(list)   
  151.  ARGUMENTS: 字符,数字均可   
  152.  EXAMPLE:   
  153.  RESULT: 建立了一个包含7个元素的数组myArray   
  154. myArray("Sunday","Monday", ... ... "Saturday")   
  155.     
  156. CInt()   
  157.  FUNCTION: 将一个表达式转化为数字类型   
  158.  SYNTAX: CInt(expression)   
  159.  ARGUMENTS: 任何有效的字符均可   
  160.  EXAMPLE:   
  161.  RESULT: 236   
  162. 转化字符"234"为数字"234",如果字符串为空,则返回0值    
  163.     
  164. CreateObject()   
  165.  FUNCTION: 建立和返回一个已注册的ACTIVEX组件的实例。   
  166.  SYNTAX: CreateObject(objName)   
  167.  ARGUMENTS: objName 是任何一个有效、已注册的ACTIVEX组件的名字.   
  168.  EXAMPLE:   
  169.  RESULT:    
  170.     
  171. CStr()   
  172.  FUNCTION: 转化一个表达式为字符串.   
  173.  SYNTAX: CStr(expression)   
  174.  ARGUMENTS: expression 是任何有效的表达式。   
  175.  EXAMPLE:   
  176.  RESULT: 转化数字“5”为字符“5”。   
  177.     
  178. Date()   
  179.  FUNCTION: 返回当前系统日期.   
  180.  SYNTAX: Date()   
  181.  ARGUMENTS: None.   
  182.  EXAMPLE:   
  183.  RESULT: 8/4/99   
  184.     
  185. DateAdd()   
  186.  FUNCTION: 返回一个被改变了的日期。   
  187.  SYNTAX: DateAdd(timeinterval,number,date)   
  188.  ARGUMENTS: timeinterval is the time interval to add; number is amount of   
  189. time intervals to add; and date is the starting date.   
  190.  EXAMPLE:   
  191.  RESULT: 11/4/99   
  192. 3:34:45 PM   
  193. "m" = "month";   
  194. "d" = "day";   
  195. If currentDate is in time format then,   
  196. "h" = "hour";   
  197. "s" = "second";   
  198.     
  199. DateDiff()   
  200.  FUNCTION: 返回两个日期之间的差值 。   
  201.  SYNTAX: DateDiff(timeinterval,date1,date2 [, firstdayofweek ][,   
  202. firstweekofyear]])   
  203.  ARGUMENTS: timeinterval 表示相隔时间的类型,如“M“表示“月”。   
  204.  EXAMPLE:   
  205.  RESULT: 从8/4/99 到2000年还有 150 天.   
  206.     
  207. Day()   
  208.  FUNCTION: 返回一个月的第几日 .   
  209.  SYNTAX: Day(date)   
  210.  ARGUMENTS: date 是任何有效的日期。    
  211.  EXAMPLE:   
  212.  RESULT: 4   
  213. FormatCurrency()   
  214.  FUNCTION: 返回表达式,此表达式已被格式化为货币值    
  215.  SYNTAX: FormatCurrency(Expression [, Digit ][, LeadingDigit ][, Paren ][,   
  216. GroupDigit]]]])   
  217.  ARGUMENTS: Digit 指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是   
  218. 计算机的区域设置; LeadingDigit 三态常数,指示是否显示小数值小数点前面的   
  219. 零。    
  220.  EXAMPLE:   
  221.  RESULT: 34.35   
  222.     
  223. FormatDateTime()   
  224.  FUNCTION: 返回表达式,此表达式已被格式化为日期或时间   
  225.  SYNTAX: FormatDateTime(Date, [, NamedFormat])   
  226.  ARGUMENTS: NamedFormat 指示所使用的日期/时间格式的数值,如果省略,则使用   
  227. VBGeneralDate.   
  228.  EXAMPLE:   
  229.  RESULT: Wednesday, August 04, 1999   
  230.     
  231. FormatNumber()   
  232.  FUNCTION: 返回表达式,此表达式已被格式化为数值.   
  233.  SYNTAX: FormatNumber(Expression [, Digit ][, LeadingDigit ][, Paren ][,   
  234. GroupDigit]]]])   
  235.  ARGUMENTS: Digit 指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是   
  236. 计算机的区域设置。; LeadingDigit i指示小数点右侧显示位数的数值。默认值为 -   
  237. 1,指示使用的是计算机的区域设置。; Paren 指示小数点右侧显示位数的数值。默认   
  238. 值为 -1,指示使用的是计算机的区域设置。; GroupDigit i指示小数点右侧显示位数   
  239. 的数值。默认值为 -1,指示使用的是计算机的区域设置。.   
  240.  EXAMPLE:   
  241.  RESULT: 45.325   
  242.     
  243. FormatPercent()   
  244.  FUNCTION: 返回表达式,此表达式已被格式化为尾随有 % 符号的百分比(乘以   
  245. 100 )。 (%)   
  246.  SYNTAX: FormatPercent(Expression [, Digit ][, LeadingDigit ][, Paren ][,   
  247. GroupDigit]]]])   
  248.  ARGUMENTS: 同上.   
  249.  EXAMPLE:   
  250.  RESULT: 45.267%   
  251.     
  252. Hour()   
  253.  FUNCTION: 以24时返回小时数.   
  254.  SYNTAX: Hour(time)   
  255.  ARGUMENTS:    
  256.  EXAMPLE:   
  257.  RESULT: 16   
  258. (Hour has been converted to 24-hour system)   
  259. Instr()   
  260.  FUNCTION: 返回字符或字符串在另一个字符串中第一次出现的位置.   
  261.  SYNTAX: Instr([start, ] strToBeSearched, strSearchFor [, compare])   
  262.  ARGUMENTS: Start为搜索的起始值,strToBeSearched接受搜索的字符串    
  263. strSearchFor要搜索的字符.compare比较方式(详细见ASP常数)   
  264.  EXAMPLE:   
  265.  RESULT: 9   
  266.     
  267. InstrRev()   
  268.  FUNCTION: 同上,只是从字符串的最后一个搜索起   
  269. YNTAX: InstrRev([start, ] strToBeSearched, strSearchFor [, compare])   
  270.  ARGUMENTS: 同上.   
  271.  EXAMPLE:   
  272.  RESULT: 13   
  273.     
  274. Int()   
  275.  FUNCTION: 返回数值类型,不四舍五入,注意取值是不大于它的整数。   
  276.  SYNTAX: Int(number)   
  277.  ARGUMENTS:    
  278.  EXAMPLE:     
  279.  RESULT: 32  -4   
  280.     
  281. IsArray()   
  282.  FUNCTION: 判断一对象是否为数组,返回布尔值 .   
  283.  SYNTAX: IsArray(name)   
  284.  ARGUMENTS:    
  285.  EXAMPLE:   
  286.  RESULT: False  
  287. IsDate()   
  288.  FUNCTION: 判断一对象是否为日期,返回布尔值   
  289.  SYNTAX: IsDate(expression)   
  290.  ARGUMENTS: expression is any valid expression.   
  291.  EXAMPLE:   
  292.  RESULT: True  
  293.     
  294. IsEmpty()   
  295.  FUNCTION: 判断一对象是否初始化,返回布尔值.   
  296.  SYNTAX: IsEmpty(expression)   
  297.  ARGUMENTS:    
  298.  EXAMPLE:   
  299.  RESULT: True  
  300.     
  301. IsNull()   
  302.  FUNCTION: 判断一对象是否为空,返回布尔值.   
  303.  SYNTAX: IsNull(expression)   
  304.  ARGUMENTS:    
  305.  EXAMPLE:   
  306.  RESULT: False  
  307.     
  308. IsNumeric()   
  309.  FUNCTION: 判断一对象是否为数字,返回布尔值.   
  310.  SYNTAX: IsNumeric(expression)   
  311.  ARGUMENTS:    
  312.  EXAMPLE:   
  313.  RESULT: True  
  314. 就算数字加了引号,ASP还是认为它是数字。   
  315. IsObject()   
  316.  FUNCTION: 判断一对象是否为对象,返回布尔值.   
  317.  SYNTAX: IsObject(expression)   
  318.  ARGUMENTS:    
  319.  EXAMPLE:   
  320.  RESULT: True  
  321.     
  322. LBound()   
  323.  FUNCTION: 返回指定数组维的最小可用下标.   
  324.  SYNTAX: Lbound(arrayname [, dimension])   
  325.  ARGUMENTS: ; dimension 指明要返回哪一维下界的整数。使用 1 表示第一维,2   
  326. 表示第二维,以此类推。如果省略 dimension 参数,默认值为 1.   
  327.  EXAMPLE:   
  328.  RESULT: 0   
  329.     
  330. LCase()   
  331.  FUNCTION:  返回字符串的小写形式   
  332.  SYNTAX: Lcase(string)   
  333.  ARGUMENTS: string is any valid string expression.   
  334.  EXAMPLE:   
  335.  RESULT: this is a test!   
  336.     
  337. Left()   
  338.  FUNCTION: 返回字符串左边第length个字符以前的字符(含第length个字符).   
  339.  SYNTAX: Left(string, length)   
  340.  ARGUMENTS:    
  341.  EXAMPLE:   
  342.  RESULT: Thi   
  343. Len()   
  344.  FUNCTION: 返回字符串的长度.   
  345.  SYNTAX: Len(string | varName)   
  346.  ARGUMENTS:    
  347.  EXAMPLE:   
  348.  RESULT: 15   
  349.     
  350. LTrim()   
  351.  FUNCTION: 去掉字符串左边的空格.   
  352.  SYNTAX: LTrim(string)   
  353.  ARGUMENTS:    
  354.  EXAMPLE:   
  355.  RESULT: This is a test!   
  356.     
  357. Mid()   
  358.  FUNCTION: 返回特定长度的字符串(从start开始,长度为length).   
  359.  SYNTAX: Mid(string, start [, length])   
  360.  ARGUMENTS:    
  361.  EXAMPLE:   
  362.  RESULT: Today   
  363.     
  364. Minute()   
  365.  FUNCTION: 返回时间的分钏.   
  366.  SYNTAX: Minute(time)   
  367.  ARGUMENTS:    
  368.  EXAMPLE:   
  369.  RESULT: 45   
  370. Right()   
  371.  FUNCTION: 返回字符串右边第length个字符以前的字符(含第length个字符).   
  372.  SYNTAX: Right(string, length)   
  373.  ARGUMENTS: .   
  374.  EXAMPLE:   
  375.  RESULT: st!   
  376.     
  377. Rnd()   
  378.  FUNCTION: 产生一个随机数.   
  379.  SYNTAX: Rnd [ (number) ]   
  380.  ARGUMENTS:    
  381.  EXAMPLE:   
  382.  RESULT: 任何一个在0 到 1 之间的数   
  383.     
  384. Round()   
  385.  FUNCTION: 返回按指定位数进行四舍五入的数值.   
  386.  SYNTAX: Round(expression [, numRight])   
  387.  ARGUMENTS: numRight数字表明小数点右边有多少位进行四舍五入。如果省略,则   
  388. Round 函数返回整数.   
  389.  EXAMPLE:   
  390.  RESULT: 32   
  391.     
  392. Rtrim()   
  393.  FUNCTION: 去掉字符串右边的字符串.   
  394.  SYNTAX: Rtrim(string)   
  395.  ARGUMENTS:    
  396.  EXAMPLE:   
  397.  RESULT: This is a test!!   
  398.     
  399. Second()   
  400.  FUNCTION: 返回秒.   
  401.  SYNTAX: Second(time)   
  402.  ARGUMENTS: .   
  403.  EXAMPLE:   
  404.  RESULT: 28   
  405.     
  406. StrReverse()   
  407.  FUNCTION: 反排一字符串   
  408.  SYNTAX: StrReverse(string)   
  409.  ARGUMENTS:    
  410.  EXAMPLE:   
  411.  RESULT: !!tset a si sihT   
  412. Time()   
  413.  FUNCTION: 返回系统时间.   
  414.  SYNTAX: Time()   
  415.  ARGUMENTS: .   
  416.  EXAMPLE:   
  417.  RESULT: 9:58:28 AM   
  418.     
  419. Trim()   
  420.  FUNCTION: 去掉字符串左右的空格.   
  421.  SYNTAX: Trim(string)   
  422.  ARGUMENTS: string is any valid string expression.   
  423.  EXAMPLE:   
  424.  RESULT: This is a test!!   
  425.     
  426. UBound()   
  427.  FUNCTION: 返回指定数组维数的最大可用下标.   
  428.  SYNTAX: Ubound(arrayname [, dimension])   
  429.  ARGUMENTS: ; dimension (optional) 指定返回哪一维上界的整数。1 表示第一   
  430. 维,2 表示第二维,以此类推。如果省略 dimension 参数,则默认值为 1.   
  431.  EXAMPLE:   
  432.  RESULT: 2   
  433.     
  434. UCase()   
  435.  FUNCTION: 返回字符串的大写形式.   
  436.  SYNTAX: UCase(string)   
  437.  ARGUMENTS:    
  438.  EXAMPLE:   
  439.  RESULT: THIS IS A TEST!!   
  440.     
  441. VarType()   
  442.  FUNCTION: 返回指示变量子类型的值   
  443.  SYNTAX: VarType(varName)   
  444.  ARGUMENTS:    
  445.  EXAMPLE:   
  446.  RESULT: 2(数字)详见"ASP常数"  
  447.     
  448. WeekDay()   
  449.  FUNCTION: 返回在一周的第几天.   
  450.  SYNTAX: WeekDay(date [, firstdayofweek])   
  451.  ARGUMENTS: .   
  452.  EXAMPLE:   
  453.  RESULT: 4(星期三)   
  454.     
  455. WeekDayName()   
  456.  FUNCTION: 返回一周第几天的名字.   
  457.  SYNTAX: WeekDayName(weekday [, Abb ][, firstdayofweek]])   
  458.  ARGUMENTS: Abb可选。Boolean 值,指明是否缩写表示星期各天的名称。如果省   
  459. 略, 默认值为 False,即不缩写星期各天的名称.firstdayofweek指明星期第一天的   
  460. 数值   
  461.  EXAMPLE:   
  462.  RESULT: Wednesday   
  463.     
  464. Year()   
  465.  FUNCTION: 返回当前的年份.   
  466.  SYNTAX: Year(date)   
  467.  ARGUMENTS:    
  468.  EXAMPLE:   
  469.  RESULT: 1999