ant propertyregex,用指定的字符串替换字符串

时间:2012-12-12 20:58:53

标签: regex ant replace

这是我的字符串com.element.subelement

我想使用propertyregex将所有.替换为/,并将该输出用作目录路径。

看起来propertyregex会成为这个工具,但也许我错误地使用了它的regexp属性。

我如何使用正则表达式仅查找.,我不想假设字符串是由句点分隔的3个字母部分。也许propertyregex不是工作的工具

这是一个有效的地方,我认为包名只有2个句号

<!-- set package name to folder directory -->
    <propertyregex 
        property="current.target.dir"
          input="com.element.subelement"
          regexp="(.+?)\.(.+?)\.(.+?)"
          replace="\1/\2/\3"
          casesensitive="false" />

    <echo>${current.target.dir}</echo>

1 个答案:

答案 0 :(得分:3)

如果我理解,只需将\.替换为/即可完成您所寻找的内容。但是,默认情况下,这只会替换一行中的第一个实例,因此您必须添加属性global="true"

<propertyregex 
    property="current.target.dir"
      input="com.element.subelement"
      regexp="\."
      replace="/"
      global="true" />