与使用 propertyregex 查找/替换相关的问题
在我的 ant 构建文件中,我有一个包含版本的属性“版本”。前任。 2.5.17.230
现在,我使用 ant-contrib 的 propertyregex
来替换所有“.”带下划线的(点)字符。我编写的语句如下:
但是,它不起作用。我什至徒劳地尝试过这些: regexp="\."
和 regexp="[.]"
有人可以帮忙吗?
谢谢
In my ant build file, I have a property 'Version' that contains the version. Ex. 2.5.17.230
Now, I am using propertyregex
of ant-contrib to replace all '.' (dot) characters with an underscore. I have written the statement as follows:
<propertyregex property="Version" input="${Version}" regexp="." replace="_" global="true" />
However, it does not work. I have even tried these in vain:regexp="\."
and regexp="[.]"
Can someone please help?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
PropertyRegex
文档 指出,除非 < code>override 属性设置为true
,如果已设置,任务将不会覆盖属性值。由于您尝试覆盖Version
属性,因此您的示例将不会执行任何操作。The
PropertyRegex
documentation states that unless theoverride
attribute is set totrue
, the task will not overwrite the property value if it's already set. And since you're trying to overwrite theVersion
property, your example will do nothing.知道了!我传递了相同的变量作为输入。我使用另一个变量“Version2”从 propertyregex 获取结果。它应该是这样的:
!
Got it! I was passing the same variable as input. I used another variable 'Version2' to get the result from propertyregex. Here is what it should have been:
<propertyregex property="Version2" input="${Version}" regexp="\." replace="_" global="true" />
Cheers!