ASP语法高亮类代码
来源:网络来源TAG:语法高亮浏览数: 次日期:2010-8-20评论:
条
折叠展开ASP/Visual Basic Code复制内容到剪贴板
- Class Wyd_AspCodeHighLight
- Private RegEx
- Public Keyword,ObjectCommand,Strings,VBCode
- Public KeyWordColor,ObjectCommandColor,StringsColor,Comment,CodeColor
- Private Sub Class_Initialize()
- Set RegEx = New RegExp
- RegEx.IgnoreCase = True ' 设置是否区分字母的大小写 True 不区分。
- RegEx.Global = True ' 设置全程性质。
- KeyWordColor="#0000FF"
- ObjectCommandColor="#FF0000"
- StringsColor="#FF00FF"
- Comment="#008000"
- CodeColor="#993300"
- Keyword="Set|Private|If|Then|Sub|End|Function|For|Next|Do|While|Wend|True|False|Nothing|Class" '关建字 请自己添加
- ObjectCommand="Left|Mid|Right|Int|Cint|Clng|String|Join|Array" '函数 请自己添加
- VBCode=""
- End Sub
- Private Sub Class_Terminate()
- Set RegEx = Nothing
- End Sub
- Private Function M_Replace(Str,Pattern,Color)
- RegEx.Pattern = Pattern ' 设置模式。
- M_Replace=RegEx.Replace(Str,"<font color="&Color">$1</font>")
- End Function
- Private Function String_Replace(Str,Pattern,Pattern1,Color,IsString)
- Dim Temp,RetStr
- RegEx.Pattern =Pattern1
- Set Matches = RegEx.Execute(Str)
- For Each Match In Matches ' 遍历 Matches 集合
- Temp=Re(Match.value)
- Str = Replace(Str,Match.value,Temp)
- Next
- RegEx.Pattern = Pattern ' 设置模式。
- If IsString=1 Then
- String_Replace=RegEx.Replace(Str,"<font color="&Color">"$1"</font>")
- Else
- String_Replace=RegEx.Replace(Str,"<font color="&Color">$1</font>")
- End If
- End Function
- Private Function Re(Str)
- Dim TRegEx,Temp
- Set TRegEx = New RegExp
- TRegEx.IgnoreCase = True ' 设置是否区分字母的大小写。
- TRegEx.Global = True ' 设置全程性质。
- TRegEx.Pattern="<.*?>"
- Temp=TRegEx.Replace(Str,"")
- Temp=Replace(Temp,"<","")
- Temp=Replace(Temp,">","")
- Re=Temp
- Set TRegEx=Nothing
- End Function
- Public Function MakeLi()
- Dim Temp
- If VBCode="" Then
- MakeLi=""
- Exit Function
- End If
- VBCode=HTMLEncode(VBCode)
- Temp=M_Replace(VBCode,"\b("&Keyword")\b",KeyWordColor)
- Temp=M_Replace(Temp,"\b("&ObjEctCommand")\b",ObjectCommandColor)
- Temp=String_Replace(Temp,"""(.*?)""","""(.*)(<.+?>)("&KeyWord&ObjectCommand")+(<.+?>)(.*)""",StringsColor,1)' 字符串
- Temp=String_Replace(Temp,"(('|rem).*)","'(.*)(<.+?>)("&KeyWord&ObjectCommand")+(<.+?>)(.*)",Comment,0) '注释
- MakeLi="<FONT COLOR="&CodeColor">"&RepVbCrlf(Temp)"</FONT>"
- End Function
- Public Function RepVbCrlf(fString)
- RepVbCrlf = Replace(fString, CHR(10), "<BR> ")
- End Function
- Public Function HTMLEncode(fString)
- If IsNull(fString) or fString="" Then
- HTMLEncode=""
- Exit Function
- End If
- fString = replace(fString, ">", ">")
- fString = replace(fString, "<", "<")
- 'fString = Replace(fString, CHR(32), " ")
- 'fString = Replace(fString, CHR(9), " ")
- 'fString = Replace(fString, CHR(34), """)
- 'fString = Replace(fString, CHR(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
- End Class
昨天新闻点击排行
一周新闻点击排行
当月新闻点击排行
评论表单加载中...