OK.这个是完整的VB.NET的语法解析程序。比较长,不过支持全部的关键字,直接就可以用了。


所属类别:.NET

文章作者:佚名

特别推荐:免费发布信息 承包关键词~~抢爆了!HOT!


using System;using System.Text;using System.Text.RegularExpressions;namespace Com.OSLeague.Component{/// /// 语法分析器,将所有Code根据语法进行变色/// 支持VB.NET/// 支持CS/// 掉掉/// 2002年5月14日/// /// 练习正则表达式/// /// public class CodeAnalysis{////定义HTML开始和结束的语句,用于语法变色//const string TAG_FNTRED= @"";const string TAG_FNTBLUE= @"" ;const string TAG_FNTGRN= @"" ;const string TAG_FNTMRN= @"" ;const string TAG_FNTBLACK= @"" ;const string TAG_EFONT= @"" ;const string TAG_SPNYELLOW = @"";const string TAG_ESPAN= @"";const string TAG_B= @"";const string TAG_EB= @"";const string TAG_COMMENT= @"";const string TAG_ECOMMENT= @"";//public CodeAnalysis(){//// TODO: 在此处添加构造函数逻辑//}/// /// 处理VB.NET代码,彩色化../// /// 传入的Code/// 处理过后的代码public string ParseVB(string Code){////定义VB.NET中关键字,将其存为数组//string[] VB_Keyword = new string[]{"AddHandler","AddressOf","AndAlso","Alias","And","Ansi","As","Assembly","Auto","Boolean","ByRef","Byte","ByVal","Call","Case","Catch","CBool","CByte","CChar","CDate","CDec","CDbl","Char","CInt","Class","CLng","CObj","Const","CShort","CSng","CStr","CType","Date","Decimal","Declare","Default","Delegate","Dim","DirectCast","Do","Double","Each","Else","ElseIf","End","Enum","Erase","Error","Event","Exit","False","Finally","For","Friend","Function","Get","GetType","GoTo","Handles","If","Implements","Imports","In","Inherits","Integer","Interface","Is","Let","Lib","Like","Long","Loop","Me","Mod","Module","MustInherit","MustOverride","MyBase","MyClass","Namespace","New","Next","Not","Nothing","NotInheritable","NotOverridable","Object","On","Option","Optional","Or","OrElse","Overloads","Overridable","Overrides","ParamArray","Preserve","Private","Property","Protected","Public","RaiseEvent","ReadOnly","ReDim","RemoveHandler","Resume","Return","Select","Set","Shadows","Shared","Short","Single","Static","Step","Stop","String","Structure","Sub","SyncLock","Then","Throw","To","True","Try","TypeOf","Unicode","Until","Variant","When","While","With","WithEvents","WriteOnly","Xor"};////设定转换代码颜色//string ReplaceVBComment = TAG_COMMENT + "$1" + TAG_ECOMMENT;string ReplaceVBKeyword = TAG_FNTBLUE + "${char}" + TAG_EFONT;//开始转换for (int i=0;i(\s" + VB_Keyword[i] + "" + VB_Keyword[i] + @"\s))";Code = Regex.Replace(Code,TempDirectives,ReplaceVBKeyword,RegexOptions.IgnoreCase);Code = Regex.Replace(Code,@"'(?[^\r\n]*)",ReplaceVBComment);Code = Regex.Replace(Code,@"REM (?[^\r\n]*)",ReplaceVBComment);}return Code;}}<
关闭本页

相关信息

· 本周微软将发布安全补丁 其中包括四个"危急"级别

·  Mocha BSM产品亮点――自定义事件

· 站在人生的十字路口上

· 调整Oracle应用系统性能的原则和方法(1)








....

39472 25135