2010-01-21

维基中 Include 宏的用法

提问:
我的目标是列出当前页面下的一级页面:
  <<Include(^/, "", ,titleonly)>>
这个宏列出了当前页面下的所有子页面(递 归),如何写正则表达式来实现这个要求?
还有就是pagename返回的是什么样的格式呢?是全路径,还是title?
回答:
如果想要列出某个页面,如 SomePage 及其所有子页面,可以使用如下语法:
<<Include(^SomePage, "", ,titleonly)>>
会显示页面 SomePage, SomePage/subpage, ..., SomePageABC, ...
如果只想列出 SomePage或者其子页面,使用:
<<Include(^SomePage(/.*)?$, "", ,titleonly)>>
提问:
<<Include(^SomePage(/.*)?$, "", ,titleonly)>>,
列出了Somepage下的所有页面,如果我只想列出一级呢?
比如我有如下的目录:系统软件部/内部资料/项目相关文档/上海联通,
我当前在内部资料这个页面设置如上的宏,但是只想列出项目相关文档
这一个页面,这个宏该如何写呢?
回答:
替换一下正则表达式的语法就可以了,可以这样:
<<Include(^SomePage(/[^/]*)?$, "", ,titleonly)>>
对于你的例子,可以这样:
<<Include(^系统软件部/内部资料/项目相关文档/([^/]*)$, "", ,titleonly)>>
说明: [^/] 的含义是除了 / 以外的字符。

关于 Include 宏的详细用法,参见 群英汇帮助手册相关章节
blog comments powered by Disqus