属性 在 propertyregex 正则表达式中

Property in propertyregex's regexp

我想在 "propertyregex" Ant contrib 任务的 "regexp" 属性中使用 属性 而不是硬编码文本。

我怎样才能让 属性 首先被替换而不是它的文本用作正则表达式本身?

示例:

var name="regexp" value="${placeholder.start}|${placeholder.end}" />
<propertyregex property="a" input="${a.raw}" regexp="${regexp}" replace="" global="true" override="true" />

您可以使用 <property> 将正则表达式传递给 regexp 属性:

<property name="a.raw" value="~_one_~ two ~_three_~" />
<property name="placeholder.start" value="~_" />
<property name="placeholder.end" value="_~" />
<property name="regexp" value="${placeholder.start}|${placeholder.end}" />
<propertyregex
    input="${a.raw}"
    regexp="${regexp}"
    replace=""
    global="true"
    property="a" />
<echo>${a}</echo>

输出

[echo] one two three