MSBuild Special Characters


This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

MSBuild reserves some characters for special use in specific contexts. You only have to escape such characters if you want to use them literally in the context in which they are reserved. For example, an asterisk has special meaning only in the Include and Exclude attributes of an item definition, and in calls to CreateItem. If you want an asterisk to appear as an asterisk in one of those contexts, you must escape it. In every other context, just type the asterisk where you want it to appear.

To escape a special character, use the syntax %xx, where xx represents the ASCII hexadecimal value of the character. For more information, see How to: Escape Special Characters in MSBuild.

Special Characters

The following table lists MSBuild special characters:

Character ASCII Reserved Usage
% %25 Referencing metadata
$ %24 Referencing properties
@ %40 Referencing item lists
' %27 Conditions and other expressions
; %3B List separator
? %3F Wildcard character for file names in Include and Exclude attributes
* %2A Wildcard character for use in file names in Include and Exclude attributes

See Also

Advanced Concepts