0

プロパティファイルがあります:

custom.properties

このプロパティファイルの内容は次のとおりです。

id=sf2j2345kkklljhlaasfsdfafsf543
name=SOME_NAME

の値idは長いランダムな文字列です。

の値を別の値に置き換え/上書きするAntスクリプトを作成したいので、 Ant構文を試してみました。id<replace>

<target name="change-id">
      <replace file="custom.properties" token="id" value="aaa" />
</target>

ant change-idを実行すると、プロパティファイルの内容は次のようになります。

aaa=sf2j2345kkklljhlaasfsdfafsf543
name=SOME_NAME

それがキー" id"であり、その値の代わりに置き換えられます。しかし、値を「 aaa 」に置き換える必要があります。Antでこれを実現するにはどうすればよいですか?

のランダムな値に設定tokenすることはお勧めしませんid。その値はランダムに生成され、そこに配置されるためです。idAntスクリプトで""のランダムな値を上書きしたいだけですが、これを実現するにはどうすればよいですか?

4

1 に答える 1

1

タスクを使用してそれを行うことができreplaceregexpます。この例のようにしてみてください

conf.ini (utf-8)

aaa=sf2j2345kkklljhlaasfsdfafsf543
name=SOME_NAME

build.xml

<project name="regexp.replace.test" default="test">

    <target name="test">
        <replaceregexp file="conf.ini" match="^aaa=.*" replace="aaa=newId" encoding="UTF-8" />
    </target>

</project>

この正規表現が正しいかどうかは正確にはわかりませんが、これができる方法です。

于 2013-03-14T10:47:13.057 に答える