如何使用Ant脚本从.txt文件中删除逗号

时间:2016-06-20 14:02:08

标签: sql oracle ant

我有一个Ant脚本和一个SQL脚本。 Ant脚本使SQL脚本针对数据库运行,并生成包含多行的.txt文件。 .txt文件包含以下值:

'value1',
'value2',
'value3',
 .
 .
'valueN',

我想删除最后一行中的逗号。是否有任何Ant命令可用于实现此目的?

我是Ant和SQL的新手

2 个答案:

答案 0 :(得分:0)

只需使用Ant replaceregexp task,f.e。 :

<replaceregexp
  match=",[^,]*$"
  replace=""
  file="${temp.dir}/file.txt"
 />

正则表达式模式查找最后一个',' 评论后 - 编辑 - 只需将<replaceregexp>代码段放在生成输出文件的<sqlexecquiet>之后,根据您的需要调整代码段:

 <target name="runquery" depends="initialize">

     <sqlexecquiet
       driver="${jd.driver}"
       url="${database.url}"
       userid="${database.user}"
       password="${database.password}"
       delimiter="go"
       coldelimiter=";"
       print="yes"
       showheaders="true"
       onerror="continue"
       output="${temp.dir}/file.txt"
      >

      <replaceregexp
        match=",[^,]*$"
        replace=""
        file="${temp.dir}/file.txt"
      />

 </target>

答案 1 :(得分:0)

您可以在构建xml的末尾添加以下 <replaceregexp> 任务以将其删除

<replaceregexp file="${temp.dir}/yourfile.txt"
               match=",([^,]*)$"
               replace=""
 />

希望这有帮助