当前位置:首页 > 网络编程 > WEB编程 > ASP > ASP中一个字符串处理类加强版(VBScript)

ASP中一个字符串处理类加强版(VBScript)

点击次数:12 次 发布日期:2008-11-26 14:25:39 作者:源代码网
源代码网推荐  相关文章参见:

  http://www.csdn.net/Develop/read_article.asp?id=22695

  本文在此基础上进行了一些添加,加了几个适合中文网站的FUNCTION进去,可能还有些没有补充进去,有感兴趣的朋友可以再在此基础上加一点FUNCTION进去,不过可别忘记分享一下!

   <%
   class StringOperations

   "***********************************************************************
   "" @功能说明: 把字符串换为char型数组
   "" @参数说明:  - str [string]: 需要转换的字符串
   "" @返回值:   - [Array] Char型数组
   "************************************************************************
    public function toCharArray(byVal str)
     redim charArray(len(str))
     for i = 1 to len(str)
   charArray(i-1) = Mid(str,i,1)
     next
     toCharArray = charArray
    end function
 
    "****************************************************************************
    "" @功能说明: 把一个数组转换成一个字符串
    "" @参数说明:  - arr [Array]: 需要转换的数据
    "" @返回值:   - [string] 字符串
    "****************************************************************************
    public function arrayToString(byVal arr)
     for i = 0 to UBound(arr)
      strObj = strObj & arr(i)
     next
     varrayToString = strObj
    end function

    "****************************************************************************
    "" @功能说明: 检查源字符串str是否以chars开头
    "" @参数说明:  - str [string]: 源字符串
    "" @参数说明:  - chars [string]: 比较的字符/字符串
    "" @返回值:   - [bool]
    "****************************************************************************
    public function startsWith(byVal str, chars)
     if Left(str,len(chars)) = chars then
      startsWith = true
     else
      startsWith = false
     end if
    end function
 
    "****************************************************************************
    "" @功能说明: 检查源字符串str是否以chars结尾
    "" @参数说明:  - str [string]: 源字符串
    "" @参数说明:  - chars [string]: 比较的字符/字符串
    "" @返回值:   - [bool]
 "****************************************************************************
 public function endsWith(byVal str, chars)
  if Right(str,len(chars)) = chars then
   endsWith = true
  else
   endsWith = false
  end if
 end function
 
    "****************************************************************************
    "" @功能说明: 复制N个字符串str
    "" @参数说明:  - str [string]: 源字符串
    "" @参数说明:  - n [int]: 复制次数
    "" @返回值:   - [string] 复制后的字符串
    "****************************************************************************


 

public function clone(byVal str, n)
  for i = 1 to n
   value = value & str
  next
  clone = value
 end function
 
    "****************************************************************************
    "" @功能说明: 删除源字符串str的前N个字符
    "" @参数说明:  - str [string]: 源字符串
    "" @参数说明:  - n [int]: 删除的字符个数
    "" @返回值:   - [string] 删除后的字符串
    "****************************************************************************
 public function trimStart(byVal str, n)
  value = Mid(str, n+1)
  trimStart = value
 end function
 
    "****************************************************************************
    "" @功能说明: 删除源字符串str的最后N个字符串
    "" @参数说明:  - str [string]: 源字符串
    "" @参数说明:  - n [int]: 删除的字符个数
    "" @返回值:   - [string] 删除后的字符串
    "****************************************************************************
 public function trimEnd(byVal str, n)
  value = Left(str, len(str)-n)
  trimEnd = value
 end function
 
    "****************************************************************************
    "" @功能说明: 检查字符character是否是英文字符 A-Z or a-z
    "" @参数说明:  - character [char]: 检查的字符
    "" @返回值:   - [bool] 如果是英文字符,返回TRUE,反之为FALSE
    "****************************************************************************
 public function isAlphabetic(byVal character)
  asciiValue = cint(asc(character))
  if (65 <= asciiValue and asciiValue <= 90) or (97 <= asciiValue and asciiValue <= 122) then
   isAlphabetic = true
  else
   isAlphabetic = false
  end if
 end function

    "****************************************************************************
    "" @功能说明: 对str字符串进行大小写转换
    "" @参数说明:  - str [string]: 源字符串
    "" @返回值:   - [string] 转换后的字符串
    "****************************************************************************
 public function swapCase(str)
  for i = 1 to len(str)
   current = mid(str, i, 1)
   if isAlphabetic(current) then
    high = asc(ucase(current))
    low = asc(lcase(current))
    sum = high + low
    return = return & chr(sum-asc(current))
   else
    return = return & current
   end if
  next
  swapCase = return
 end function
 
    "****************************************************************************
    "" @功能说明: 将源字符串str中每个单词的第一个字母转换成大写
    "" @参数说明:  - str [string]: 源字符串
    "" @返回值:   - [string] 转换后的字符串
    "****************************************************************************
 public function capitalize(str)
  words = split(str," ")
  for i = 0 to ubound(words)
   if not i = 0 then
    tmp = " "
   end if
   tmp = tmp & ucase(left(words(i), 1)) & right(words(i), len(words(i))-1)
   words(i) = tmp
  next
  capitalize = arrayToString(words)
 end function

    "****************************************************************************
    "" @功能说明: 将源字符Str后中的"过滤为""
    "" @参数说明:  - str [string]: 源字符串
    "" @返回值:   - [string] 转换后的字符串
    "****************************************************************************
 public function checkstr(Str)
  If Trim(Str)="" Or IsNull(str) Then
   checkstr=""
  else
   checkstr=Replace(Trim(Str),""","""")
  end if
 End function


 ****************************************************************************
    "" @功能说明: 将字符串中的str中的HTML代码进行过滤
    "" @参数说明:  - str [string]: 源字符串
    "" @返回值:   - [string] 转换后的字符串
    "****************************************************************************
 Public Function HtmlEncode(str)
  If Trim(Str)="" Or IsNull(str) then
   HtmlEncode=""
  else
   str=Replace(str,">","&gt;")
   str=Replace(str,"<","&lt;")
   str=Replace(str,Chr(32),"&nbsp;")
   str=Replace(str,Chr(9),"&nbsp;")
   str=Replace(str,Chr(34),"&quot;")
   str=Replace(str,Chr(39),"&#39;")
   str=Replace(str,Chr(13),"")
   str=Replace(str,Chr(10) & Chr(10), "</p><p>")
   str=Replace(str,Chr(10),"<br> ")
   HtmlEncode=str
  end if
 End Function

    "****************************************************************************
    "" @功能说明: 计算源字符串Str的长度(一个中文字符为2个字节长)
    "" @参数说明:  - str [string]: 源字符串
    "" @返回值:   - [Int] 源字符串的长度
    "****************************************************************************
 Public Function strLen(Str)
  If Trim(Str)="" Or IsNull(str) Then
   strlen=0
  else
   Dim P_len,x
   P_len=0
   StrLen=0
   P_len=Len(Trim(Str))
   For x=1 To P_len
    If Asc(Mid(Str,x,1))<0 Then
     StrLen=Int(StrLen) + 2
    Else
     StrLen=Int(StrLen) + 1
    End If
   Next
  end if
 End Function

    "****************************************************************************
    "" @功能说明: 截取源字符串Str的前LenNum个字符(一个中文字符为2个字节长)
    "" @参数说明:  - str [string]: 源字符串
    "" @参数说明:  - LenNum [int]: 截取的长度
    "" @返回值:   - [string]: 转换后的字符串
    "****************************************************************************
 Public Function CutStr(Str,LenNum)
  Dim P_num
  Dim I,X
  If StrLen(Str)<=LenNum Then
   Cutstr=Str
  Else
   P_num=0
   X=0
   Do While Not P_num > LenNum-2
    X=X+1
    If Asc(Mid(Str,X,1))<0 Then
     P_num=Int(P_num) + 2
    Else
     P_num=Int(P_num) + 1
    End If
    Cutstr=Left(Trim(Str),X)&"..."
   Loop
  End If
 End Function

end class
%>


源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华