收集的一个文本处理类

<%
Class Cls_Text
'=================
    Private l,t,c,i
 Private bwords,Temp
 Private Sub Class_Initialize()
      l=0
   t=0
   c=0
   i=0
    End Sub
 Private Sub Class_Terminate()
  bwords = Empty
  Temp = Empty
 End Sub

   '**************************************************
   '函数名:strLen
   '作  用:求字符串长度。汉字算两个字符,英文算一个字符。
   '参  数:str  ----要求长度的字符串
   '返回值:字符串长度
   '**************************************************
   Public Function StrLen(str)
  If IsNull(str) Or Str = "" Then
   strLen = 0
   Exit Function
  End If
  Dim WINNT_CHINESE
  WINNT_CHINESE=(Len("例子")=2)
  If WINNT_CHINESE Then 
   l=Len(str)
   t=l
   For i=1 To l
    c=Asc(Mid(str,i,1))
    If c<0 Then c=c+65536
    If c>255 Then t=t+1
   Next
   strLen=t
  Else
   strLen=Len(str)
  End If
     End Function


   '**************************************************
   '函数名:StrLeft
   '作  用:截字符串,汉字一个算两个字符,英文算一个字符
   '参  数:str   ----原字符串
   '       strlen ----截取长度
   '返回值:截取后的字符串
   '**************************************************
   Public Function StrLeft(str,strlen)
    If str="" Then
       StrLeft=""
    Exit Function
    End If
 
    str=Replace(Replace(Replace(Replace(str,"&nbsp;"," "),"&quot;",Chr(34)),"&gt;",">"),"&lt;","<")
    l=Len(str)
    t=0
    For i=1 To l
    c=Abs(Asc(Mid(str,i,1)))
    If c>255 Then
      t=t+2
    Else
      t=t+1
    End If
    If t>=strlen Then
      StrLeft=Left(str,i) & "..."
      Exit For
    Else
      StrLeft=str
    End If
    Next
    StrLeft=Replace(Replace(Replace(replace(StrLeft," ","&nbsp;"),Chr(34),"&quot;"),">","&gt;"),"<","&lt;")
   End Function

   '*******************
   '屏蔽字符
   '*******************
   Public Function ChkBadWords(fString,BadWords)
     bwords = Split(BadWords, "|")
     For i = 0 To ubound(bwords)
        fString = Replace(fString, bwords(i), string(len(bwords(i)),"*"), 1,-1,1)
     Next
     ChkBadWords = fString
   End Function
   '*********************
   ' 过滤HTML字符
   '*********************
   Public Function HTMLEncode(fString)
     If IsNull(fString) Or fString="" Then
     HTMLEncode=""
  Exit Function
     End If
     fString = replace(fString, ">", "&gt;")
     fString = replace(fString, "<", "&lt;")
     fString = Replace(fString, CHR(32), "&nbsp;")
     fString = Replace(fString, CHR(9), "&nbsp;")
     fString = Replace(fString, CHR(34), "&quot;")
     fString = Replace(fString, CHR(39), "&#39;")
     fString = Replace(fString, CHR(13), "")
     fString = Replace(fString, CHR(10) & CHR(10), "</P><P> ")
     fString = Replace(fString, CHR(10), "<BR> ")
     HTMLEncode = fString
   End Function
   '***************
   '传字符值
   '***************
  Public Function GetStr(Index)
  Temp = Request(Index)
  If IsEmpty(Temp) Then
   Temp = ""
  Else
   Temp = SQLStr(Temp)
  End If
  GetStr = Temp
 End Function

 Public Function SQLStr(Chkstr)
  Dim Str,re
  Str=Trim(Chkstr)
  IF isnull(Str) Then
   SQLStr = ""
   Exit Function
  End IF
  Set re=new RegExp
  re.IgnoreCase =true
  re.Global=True
  re.Pattern="(/r/n){3,}"
  str=re.Replace(str,"$1$1$1")
  set re=nothing
 
  Str = Replace(Str, "'", "''", 1, -1, 1)
  Str = Replace(Str, "select", "sel&#101;ct", 1, -1, 1)
  Str = Replace(Str, "join", "jo&#105;n", 1, -1, 1)
  Str = Replace(Str, "union", "un&#105;on", 1, -1, 1)
  Str = Replace(Str, "where", "wh&#101;re", 1, -1, 1)
  Str = Replace(Str, "insert", "ins&#101;rt", 1, -1, 1)
  Str = Replace(Str, "delete", "del&#101;te", 1, -1, 1)
  Str = Replace(Str, "update", "up&#100;ate", 1, -1, 1)
  Str = Replace(Str, "like", "lik&#101;", 1, -1, 1)
  Str = Replace(Str, "drop", "dro&#112;", 1, -1, 1)
  Str = Replace(Str, "create", "cr&#101;ate", 1, -1, 1)
  Str = Replace(Str, "modify", "mod&#105;fy", 1, -1, 1)
  Str = Replace(Str, "rename", "ren&#097;me", 1, -1, 1)
  Str = Replace(Str, "alter", "alt&#101;r", 1, -1, 1)
  Str = Replace(Str, "cast", "ca&#115;t", 1, -1, 1)
  Str = Replace(Str, "master", "m&#097;ster", 1, -1, 1)  
  SQLStr=Trim(Str)
 End Function


   '***************
   '传数字值
   '*************
 Public Function GetNum(Index)
  Temp = Request(Index)
  If Not IsEmpty(Temp) And IsNumeric(Temp) Then
   GetNum = Clng(Temp)
  ElseIf InStr(Temp,"'")>0 Then
   GetNum = "IsErr"
     Else
      GetNum = 0
  End If
 End Function
   '***************
   '过滤JS
   '*************
 Public Function FixJs(Str)
   If Str <>"" Then
     'Str = Replace(Str,VBcrlf,"/n")
  'Str = replace(str,"/", "//")
  'Str = replace(str, chr(34), "/""")
  'Str = replace(str, chr(39),"/'")
  Str = replace(str, "</","<//")
   End If
   Fixjs=Str
    End Function
    '插入JavaScript脚本
    Public Function JavaScript(ScriptName)
      JavaScript = VBCRLF & "<Script language=JavaScript Src=Js/" & ScriptName & ".js></Script>" & VBCRLF
    End Function
    Public Function JsVar(EvenName,EvenValue)
  JsVar = VBCRLF & "<Script language=JavaScript>var " & EvenName & " = """ & FixJs(EvenValue) & """;</Script>"

& VBCRLF
    End Function
 Public Function JsVarItem(VarItem,VarValue)
   Dim Item
     i=0
        Temp = VbCrlf & "<Script language=JavaScript>" & VbCrlf
  For i=0 To Ubound(VarItem)
          Temp = Temp & "var " & VarItem(i) & " = """ & FixJs(VarValue(i)) & """;"& VBCRLF
        Next
  Temp = Temp &"</Script>" &VBCRLF
        JsVarItem=Temp
    End Function

    Public Function JsArray(ArrayName,ArrayValue)
  Dim EvenName,i
  JsArray = VBCRLF & "<Script language=JavaScript>" & VBCRLF
  JsArray = JsArray  & "var " & ArrayName & " = Array("
  JsArray = JsArray & """" & Replace(ArrayValue,"|",""",""") & """"
  JsArray = JsArray & ");" & VBCRLF & "</Script>" & VBCRLF
 End Function
End Class

%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值