我想要检索目录中的文件内容,这些内容符合给定的正则表达式规则或字符串(例如 ./*。xml )。
我找到了以下示例
[% FOREACH directory.files.grep('\.txt$') %]
...
[% END %]
但不知道如何使用它。这可以解决我的问题吗?
答案 0 :(得分:2)
快速查看文档表明directory.files
的输出是对象的集合,因此.grep()
不太可能起作用。它有name
,isdir
等方法。
最简单的解决方案是:
[%- FOREACH file IN directory.files;
#NEXT UNLESS file.name.match('\.xml$');
NEXT UNLESS file.ext == 'xml';
...
END -%]
修改:根据ThisSuitIsBlackNot的建议改进了答案。