使用 MSBuild 计算字符(在我的情况下为“\”)出现在字符串中的次数的最简单方法是什么?我尝试使用 Split( \
) 无济于事。
问问题
1263 次
2 回答
4
MsBuild 4.0 允许使用属性函数http://msdn.microsoft.com/en-us/library/dd633440.aspx
您可以使用它来拆分字符串。然后,您必须将长度减去 1 以获得出现次数。
<Target Name="SplitCount">
<PropertyGroup>
<path>test\document\home</path>
</PropertyGroup>
<PropertyGroup>
<test>$(path.Split('\').length)</test>
</PropertyGroup>
<Message Text="occurrence count: $([MSBuild]::Subtract($(test), 1))"><Message>
</Target>
于 2012-10-30T17:13:47.540 回答
1
在MSBuild Community Tasks中,有一个 RegexMatch 任务可以为您提供一个列表,然后您可以计算该列表。
另一种选择是编写您自己的自定义任务。然后像这样添加一些Linq:
string input = "This \\ is \\ a \\ test";
var items = (from c in input where c == '\\' select c).ToList();
var count = items.Count;
于 2012-10-30T15:59:51.073 回答