Как использовать номер рядом с номером группы в регулярном выражении заменить

1

Заголовок вопроса не совсем ясен, но проблема довольно проста.

Я сопоставляю AssemblyVersion в файле AssemblyInfo.cs и пытаюсь заменить версию.

В основном код похож на:

// FileContent is the text content of
// the AssemblyInfo.cs file
var version = new Version(2, 0, 0, 0);
var regex = new Regex(@"^(\s?\[assembly: AssemblyVersion\("")([0-9\.]+)(""\)])", RegexOption.Multiline);
var result = regex.Replace(FileContent, "$1" + version + "$3");

С этим образцом результат здесь равен $12.0.0.0")] что не совсем хороший результат.

Единственный способ, которым я нашел, чтобы отличать $1 от номера версии, - это разместить пробел, но это не то, что я ищу.

Как я смогу это решить?

Теги:
replace

1 ответ

1
Лучший ответ

Вы можете использовать ${1}. Есть много аналогичных вопросов по SO (почему "$ 1" заканчивается в моем Regex.Replace() результате?)

  • 0
    Хорошо знать! Это добилось цели.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню