Dav*_*ave 2 regex msbuild .net-4.0 visual-studio-2010
我在解决如何FileUpdate在ReplacementText属性中的MSBuild 目标中正确转义双引号时遇到问题。
我想做的很简单。我想搜索AssemblyFileVersion("1.0.0.0")并替换为AssemblyFileVersion("1.0.0.<revision number here>")。我正在使用一个FileUpdate看起来像这样的元素:
<FileUpdate Files="Properties\AssemblyInfo.cs" Regex="AssemblyFileVersion(\(\x22)(\d+)\.(\d+)\.(\d+)\.(\d+)" ReplacementText="AssemblyFileVersion$1$2.$3.$4.$(build_vcs_number_1)" />
Run Code Online (Sandbox Code Playgroud)
这可以正常工作,但是看起来确实很奇怪!基本上,由于我无法在ReplacementText属性中使用双引号,因此我必须将Regex字符串中的“分组,然后使用组号将”插入ReplacementText(实际上,我将(和”,但我只需要对“)进行分组。
我已经尝试了所有标准方法-\“,”,\ x22,\ x22,\“,但没有任何效果。我必须在这里遗漏一些明显的东西,但这是什么?
尴尬...
在* ML中,带引号的字符串用于"表示引号。
例如:
<FileUpdate Files="Properties\AssemblyInfo.cs" Regex="(AssemblyFileVersion\("\d+\.\d+\.\d+\.)\d+("\))" ReplacementText="$1$(build_vcs_number_1)$2" />
Run Code Online (Sandbox Code Playgroud)
您可能也可以使用单引号,例如:
<FileUpdate Files="Properties\AssemblyInfo.cs" Regex='(AssemblyFileVersion\("\d+\.\d+\.\d+\.)\d+("\))' ReplacementText="$1$(build_vcs_number_1)$2" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1524 次 |
| 最近记录: |