相關文章參見:
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 arrayToString = 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,">",">") str=Replace(str,"<","<") str=Replace(str,Chr(32)," ") str=Replace(str,Chr(9)," ") str=Replace(str,Chr(34),""") str=Replace(str,Chr(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 %>
|