输入字符串:-[abc,xyz,mnp,aox,3ds,k42][brf,fd3,asd,45s,tsd]
我想像一样分别打印两个列表
列表1:-abcxyzmnpaox3dsk42
列表2:-brffd3asd45秒tsd
目前,我只能用下面的代码打印第一个列表。
<propertyregex property="lists" input="${inputString}" regexp="[(.*)]" select="1" casesensitive="false" global="true" />
<echo>list 1 :-</echo>
<for list="${lists}" param="gv">
<sequential><echo>@{gv}</echo></sequential>
</for>
请帮助我如何解决这个问题。
谨致问候,Suresh
不需要像antcontrib这样的额外库,使用内置的javascript引擎(Java>=1.6.0_06)
与这样的ant脚本任务:
<project>
<property name="foobar" value="[abc,xyz,mnp,aox,3ds,k42] [brf,fd3,asd,45s,tsd]"/>
<script language="javascript">
<![CDATA[
var lists = project.getProperty('foobar').split(' ');
for (var i = 0; i < lists.length; i++) {
var list = lists[i].replace('[', '').replace(']', '');
var items = list.split(',').join().replace(/,/g, ' ') ;
print('list ' + i + ': ' + items);
}
]]>
</script>
</project>
输出:
[script] list 0: abc xyz mnp aox 3ds k42
[script] list 1: brf fd3 asd 45s tsd