1

ファイルを入力として受け取り、すべての空白文字を''に置き換えるAntターゲットをどのように記述しますか(つまり、入力テキストファイルを「縮小」してディスクに書き込むためのAntターゲットが必要です)。

私は、Javaでは次のようなことをしているだけであることを知っています。

public void minify(String originalString){
    String minifiedFile = originalString.replaceAll(" ", "");
}

しかし、「minify()」関数を呼び出すためのAntターゲットを取得するにはどうすればよいですか?また、Antにパラメータ「originalString」を渡すにはどうすればよいですか?

すべて/アドバイスをいただければ幸いです。

4

2 に答える 2

2

Ant-ContribのPropertyRegexタグを試しましたか?これにより、指定された文字列に対して「regex-replace」が実行されます。

ただし、ファイル全体に対してそれを実行しようとしているように思われます。その場合、Javaプログラム全体(単一の関数だけでなく)を記述し、antの組​​み込みJavaタスクを使用してそのプログラムを呼び出します。

または、@ jahroyがコメントで示唆しているように、Antの組み込みexecタスクを使用してを呼び出すことができますsed。それは実際にはおそらく最も簡単な解決策です。

于 2012-12-06T03:29:20.170 に答える
1

最近のバージョンのantは、正規表現ベースの文字列置換をサポートしています。これがantサイトのコード例です

<replaceregexp match="\s+" replace=" " flags="g" byline="true">
    <fileset dir="${html.dir}" includes="**/*.html"/>
</replaceregexp>

元の質問の場合-はい。あなたはアリを拡張することができます

オプション3(sedなどのプログラムの呼び出し)は、ビルド環境の長期的なメンテナンスで問題を引き起こしますが

于 2012-12-06T04:44:51.183 に答える