У меня есть проблема с выяснением, как правильно избегать двойных кавычек в моей цели MSBuild FileUpdate
, в атрибуте ReplacementText
.
То, что я пытаюсь сделать, очень просто.Я хочу найти 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)" />
Это прекрасно работает, но это, конечно, кажется странным способом сделать это!По сути, так как я не смог заставить работать двойные кавычки в атрибуте ReplacementText
, мне пришлось сгруппировать "из строки Regex, а затем использовать номер группы, чтобы вставить" в ReplacementText
(на самом деле,Я сгруппировал (и ", но мне нужно было только сгруппировать").
Я перепробовал все стандартные методы - \ "," ", \ x22, \ x22, \",и ничего не работает. Должно быть, я упускаю что-то очевидное здесь, но что это?
Смущенный ...