html5视频播放器模板:完整的VB.NET的语法解析程序(Complete VB.NET syntax parse...
来源:百度文库 编辑:中财网 时间:2024/04/27 02:13:26
完整的VB.NET的语法解析程序 [ English ]
2008-2-24 1:52:22 中国学网 跟贴 0 条 网友投稿
作者: blood
比较长,不过支持全部的关键字,直接就可以用了。
using System;
using System.Text;
using System.Text.RegularExpressions;
namespace Com.OSLeague.Component
{
///
/// 语法分析器,将所有Code根据语法进行变色
///
- 支持VB.NET
///
- 支持CS
///
///
///
/// 练习正则表达式
///
///
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
string TempDirectives = @"(?
Code = Regex.Replace(Code,TempDirectives,ReplaceVBKeyword,RegexOptions.IgnoreCase);
Code = Regex.Replace(Code,@"'(?
Code = Regex.Replace(Code,@"REM (?
}
return Code;
}
}
}
转帖于 Xue163.com_VB.NET
请问用vb.net怎么做一个完整的信息收集程序
谁知道vb中msgbox的语法,请举个完整的例子!
VB.NET包含解析html的能力吗?
asp.net如果用VB写他的语法是和VB.net的一样吗?
VB工程怎么生成完整的程序????
关于vb.net的一道程序题
vb.net写日历程序的源码!
VB .NET编的程序重装系统后打不开
VB的语法问题。
VB的语法问题。
VB数据库程序编好后该怎么发布完整的程序
那位老大告诉一下,那有VB.NET和c#的语法手册下载,和VB.NET和c#.net的例子,给出链接网址好吗?
为什么最新的VBA脚本还是采用VB6语法,而不是VB.NET?
两个现有的asp.net程序,一个是用VB.NET,一个是用C#.NET.
一个VB语法的问题
简单的VB语法问题。
XP下如何支持VB.net编写的程序
程序错在哪里?(VB.NET的题目)
在vb.net程序计设中怎么固定form的大小
VB .NET编的程序打开怎么那么慢?
vb.net中用到Access数据库的程序
vb.net开发简单的时钟程序??高手救救我!
vb.net的麻烦
vb.NET的题目