【简介】
QMacros是QDAC的一个组成部分,采用宏定义的方式来快速替换复杂的文本内容模板。如下面的一句话:
My Name is <%Name%>,Please call me <%FirstName%>
我们定义如下宏:
Name =>Jone Stand
FirstName => Jone
使用QMacros执行下面的替换操作后:
AMacroMgr := TQMacroManager.Create; AMacroMgr.Push('Name','Jone Stand'); AMacroMgr.Push('FirstName','Jone'); S:=AMacroMgr.Replace('My Name is <%Name%>,Please call me <%FirstName%>', '<%','%>',0);
此时字符串S的值即为:
My Name is Jone Stand,Please call me Jone
具体使用方法请到下载 QDAC 新版到 Demos\Delphi\VCL\QMacros 目录下查看示例程序及源码中相关函数注释说明。
【功能特色】
● 支持在替换时自定义宏的起始和结束字符串,两者可以一样,也可以不一样,但一定要保证宏定义中间不会出现该字符;
● 采用栈式管理,使用使用宏最后入栈的值替换,当不使用新值时,可以出栈恢复末次的值;
● 支持保存点功能,可以设置保存点并在其后多次入栈新的宏定义,只需要在最后还原到保存的保存点,就可以恢复所有保存点保存时的宏定义原状;
● 支持大小写区分和忽略大小写两种处理模式;
● 支持动态取值宏定义(相当于简单的函数),可以让宏定义每次替换时对应不同的值;
● 使用二分法查找宏定义名称,更快的解析替换速度;
● 支持模板预编译,方便一次编译,多次替换;
如果您有什么改进的意见或建议,请加官网群讨论或在本专题后面留言。
【入门】
【示例】
[QMacros] 使用 QMacros 生成流水号命名文件
[QMacros] 使用 QMacros 从 PHP 脚本中获取使用的变量名称列表
[QMacros]使用 QMacros 玩转 HTML 模板