顯示以逗號分隔的項目清單
在使用 Microsoft Build Engine (MSBuild) 中列出的項目時,建議您以易於閱讀的方式顯示這些項目清單中的內容。 否則,您可能必須進行以特殊分隔符號字串分隔項目清單的工作。 在這兩種情況下,您都可以為項目清單指定分隔符號字串。
以逗號分隔清單中的項目
根據預設,MSBuild 會使用分號來分隔清單中的項目。 例如,假設是含有下列值的 Message
項目:
<Message Text="This is my list of TXT files: @(TXTFile)"/>
當 @(TXTFile)
項目清單包含 App1.txt、App2.txt 和 App3.txt 項目時,訊息為:
This is my list of TXT files: App1.txt;App2.txt;App3.txt
如果您想要變更預設行為,可以指定自己的分隔符號。 指定項目清單分隔符號的語法是:
@(ItemListName, '<separator>')
分隔符號可以是單一字元或字串,且必須括在單引號中。
若要在項目之間插入逗號和空格
使用類似下列的項目標記法:
@(TXTFile, ', ')
範例
在此範例中,Exec 工作會執行 findstr 工具,以在 Phrases.txt 檔案中尋找指定的文字字串。 在 findstr 命令中,字串常值搜尋是以 /c: 參數指定,因此 @(Phrase)
項目清單中的項目之間會差入 /c:
項目分隔符號。
此範例中,對等的命令列命令是:
findstr /i /c:hello /c:world /c:msbuild phrases.txt
<Project DefaultTargets = "Find"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<ItemGroup>
<Phrase Include="hello"/>
<Phrase Include="world"/>
<Phrase Include="msbuild"/>
</ItemGroup>
<Target Name = "Find">
<!-- Find some strings in a file -->
<Exec Command="findstr /i /c:@(Phrase, ' /c:') phrases.txt"/>
</Target>
</Project>