其实一直很想完成状态机的自动排版的,不过想想还是先放代码出来之后再慢慢解决这个问题好了。对于一个Demo来说状态机的自动排版功能显然是不必要的。
代码在
这里下载。
文件结构:
<根目录>
<Demo>
<RegexDebugger>:Visual C++ 2008 Solution及Regex Debugger的代码
<Library>
<Data>:少量其他代码
<Data>:字符串以及容器
<Grammar2>:正则表达式引擎代码
<Windows>:GUI Framework代码(preview版,别指望写了的都能用)
Library里面的Vczh Library++是被剥离的,只有Regex Debugger需要的部分。在正确安装Visual Studio 2008的电脑上可以编译。Visual C++ Express 2008没有试过,Visual Studio 2005如果你会改*.sln和*.vcproj的话可以,更低版本无法编译代码。程序仅在Windows Vista底下跑过,XP不知道有没有啥事情,不过一般不会有。
正则表达式语法请见Library\Data\Grammar2\VL_RegExp.h的单元注释,如果以前不懂正则表达式的话建议先学一学(正则表达式的语法本身没多少功能,都看了)然后再看这个注释。
程序界面部分结构如下:
class RegForm : public VL_WinForm
{
void InitControls()
{
/*创建控件*/
}
public:
RegForm():VL_WinForm(true)
{
SetText(WindowTitle);
InitControls();
MoveCenter();
}
};
void main()
{
/*创建窗口*/
(new RegForm())->ShowMaximized();
/*启动程序*/
GetApplication()->Run();
}
posted on 2008-08-25 04:17
陈梓瀚(vczh) 阅读(20269)
评论(18) 编辑 收藏 引用 所属分类:
作品