请教怎么设计软件架构让使用者可以手动添加判断语句

请问如何设计软件架构让使用者可以手动添加判断语句
想做一个对文本进行检索的软件
但是检索的内容不固定
可能只是简单的关键词匹配,也可能需要多重嵌套匹配
关键是这种匹配我不想在程序中写死,而是让使用者自己来添加

请问各位大虾有没有比较好的设计思路

------解决方案--------------------
文本查找现在感觉用的最多的不就是正则表达式的匹配了,难道你还想写成
if(前两个是XX)
{
判断剩下的字符
}
的形式啊。
还是正则表达式比较好用
------解决方案--------------------
用到动态参数,va_list啊
------解决方案--------------------
http://www.diybl.com/course/3_program/c++/cppsl/2008114/96389.html

你接受用户输入,然后在调用函数的时候使用Va_list机制
------解决方案--------------------
正则表达式就是答案。
你实现正则表达式查找,用户输入正则表达式。
或者你只实现它的子集,让用户也少学点东西。
------解决方案--------------------
探讨
正则表达式就是答案。
你实现正则表达式查找,用户输入正则表达式。
或者你只实现它的子集,让用户也少学点东西。