2014-09-23 129 views
0

我想文件路径转换为Android包名称从下面给出的文件路径,如:如何使用Apache Ant从文件路径中提取软件包名称?

F:\ PartnerFolders \修改的\ src \ COM \建设者\分量\ AlwaysFocusedText.java

我想

\ COM \建设者\分量转换\

com.builder.components

和文件移动到转换后的包

预先感谢。

+0

为什么不找到'indexOf' src'和相应的偏移量'replaceAll' \ with。 – 2014-09-23 07:42:04

+0

@AbhiroopSarkar感谢您的建议:) – Nik 2014-09-23 10:21:31

回答

0

您已经标记了蚂蚁的contrib,所以你可以只使用2个propertyregexs,例如,如果你的文件路径的属性定义:

<property name="file.path" value="F:\PartnerFolders\modify\src\com\builder\components\AlwaysFocusedText.java"/> 

然后,您可以用下面的代码得到您想要的包名:

<propertyregex property="stripped.file.path" input="${file.path}" regexp=".*\\src\\(.*)\\.*\.java" select="\1"/> 
<propertyregex property="package" input="${stripped.file.path}" regexp="\\" replace="." global="true"/> 

第一propertyregex将去掉的字符串:\ COM \助洗剂\部件\并将其存储在所述属性stripped.file.pathselect="\1"选择第一组,即正则表达式的第一括号内包含的内容。 第二个propertyregex将用取代\并将其存储在财产

相关问题