বা ... আপনি নিজের নিজস্ব কার্যও চেষ্টা করতে পারেন
জাভা কোড:
class CustomString extends Task{
private String type, string, before, after, returnValue;
public void execute() {
if (getType().equals("replace")) {
replace(getString(), getBefore(), getAfter());
}
}
private void replace(String str, String a, String b){
String results = str.replace(a, b);
Project project = getProject();
project.setProperty(getReturnValue(), results);
}
..all getter and setter..
অ্যান্টি স্ক্রিপ্ট
...
<project name="ant-test" default="build">
<target name="build" depends="compile, run"/>
<target name="clean">
<delete dir="build" />
</target>
<target name="compile" depends="clean">
<mkdir dir="build/classes"/>
<javac srcdir="src" destdir="build/classes" includeantruntime="true"/>
</target>
<target name="declare" depends="compile">
<taskdef name="string" classname="CustomString" classpath="build/classes" />
</target>
<target name="run" depends="declare">
<property name="propA" value="This is a value"/>
<echo message="propA=${propA}" />
<string type="replace" string="${propA}" before=" " after="_" returnvalue="propB"/>
<echo message="propB=${propB}" />
</target>
কনসোল:
run:
[echo] propA=This is a value
[echo] propB=This_is_a_value
defaultValue="${propA}"
করা সাধারণ অনুসন্ধান হিসাবে নিখুঁত / এক-লাইনার প্রতিস্থাপন: অন্যথায়, যদি কোনও মিল না থাকে তবে কিছুই প্রোপবিতে রাখা হয় না !! ধন্যবাদ!