0
閱讀https://ant.apache.org/manual/dirtasks.html,它說螞蟻patternset部分集
「*這些圖案看起來非常像DOS和UNIX使用模式: ‘*’匹配零個或多個字符,‘?’匹配一個字符。「
我想清理以下(簡單例子:)因爲我認爲第二種形式是更簡潔,可讀性(如果你知道正則表達式的模式,當然):
<copy todir="${target.dir}" flatten="true" >
<fileset dir="${source.dir}" >
<include name="**/*.war" />
<include name="**/*.ear" />
<include name="**/*.gar" />
<exclude name="some-dir/**" />
</fileset>
</copy>
要是這樣的:
<include name="**/*.[weg]ar" />
但不被支持,即使它是類UNIX。
<include name="**/*.?ar" />
是不夠的,因爲我不希望有「的* .jar」
什麼是解決這個問題的最有效方法是什麼?
PS:仍在螞蟻1.7.1
我不認爲你可以做這個。這不是正則表達式語法,而是_globbing_。你只有'*'和'?'功能,但這些是glob字符而不是正則表達式符號。 –
是的,我認識到這是copy/include構造中唯一可用的選項,但是是否有另一種解決方案,包含資源集合或其他方法......等同於「find * -name」*。[weg] ar 「',這將解決,然後可以在副本中使用? –