ReplaceRegex函数没有执行任务



我想编辑这行输入并向Product_A Key添加一些更多的值。

 input="CSDT_FLAG_PRODUCT_FF_FWUIDS=Product_A:45223423;Product_PD:4;Product_CD:345345,22454;Product_F:3423"

我有下面的ant replacegex行。

replaceregexp file="../cms-distribution/src/main/properties/editorial/common/csdtflags.properties" flags="s" match="Product_A:([^.]*)([;])?" replace="Product_A:,${uid}1" byline="true"/>

除了产生的结果:

CSDT_FLAG_PRODUCT_FF_FWUIDS=Product_A:+,42e8140a-79ce-4bda-b64a-539bc4a17dbb+,80ab7183-715d-471b-8ae0-b527d2597b06+,......

它从任何地方插入一个+符号,其次它替换了Product_A中存在的原始值。我想在原始值后面加一个逗号。我该怎么做呢?感谢任何帮助。

谢谢

我不知道一件事关于ant和它如何处理正则表达式,但我认为问题依赖于正则表达式。你有一个字符串

"CSDT_FLAG_PRODUCT_FF_FWUIDS=Product_A:45223423;Product_PD:4;Product_CD:345345,22454;Product_F:3423"

和一个正则表达式

/Product_A:([^.]*)([;])?/

;匹配直到字符;的最后出现,因此不匹配仅在Product_A下的值,在这里看到它自己。

然而,如果你现在Product_A key的值将始终是一个8位字符串,你可以使用这个正则表达式:

/Product_A:(.{8});/

()内的匹配组将捕获代码,这是尽可能多的我可以帮助你,也许这个答案在Ant属性中替换字符有帮助。

相关内容

  • 没有找到相关文章

最新更新