Шаблон регулярного выражения для замены любого вхождения {...} фактическими значениямиC#

Место общения программистов C#
Anonymous
Шаблон регулярного выражения для замены любого вхождения {...} фактическими значениями

Сообщение Anonymous »

Я пытаюсь создать метод, который позволит мне заменить любое вхождение строки {.... некоторыми значениями.
Позвольте мне дать вам пример:

Код: Выделить всё

public const string ProductsApi = "/api/companies/{companyId:int}/stores/{storeKey}/products";
Это минимальная конечная точка API. В этой конкретной конечной точке у нас есть 2 значения, которые нужно заменить (это необязательно, для замены может быть 1+ значений). Итак, если CompanyId = 55 и storeKey = "se2", результат будет следующий:

Код: Выделить всё

public const string ProductPathForHttpClient = "/api/companies/55/stores/se2/products";
Чтобы свести к минимуму вероятность ошибок, я хотел бы иметь метод расширения строки, назовем его Interpolate(...), чтобы сделать это:

Код: Выделить всё

var productsPathForHttpClient = roductsApi.Interpolate(55, "se2");
Итак, Interpolate найдет первое вхождение {.. и заменит его первым значением, затем вторым вхождением и так далее...< /p>
Я могу сделать это, выполнив поиск по { (начало) и (конец), а затем заменив эту строку значением, а затем выполнив поиск следующего вхождения и т. д. .
Мне интересно, возможно ли это с помощью регулярных выражений? По сути, я пытаюсь свести к минимуму ошибки в вызовах API, определяя API, а затем заменяя любые {.. фактическими значениями для пути HttpClient.

Подробнее здесь: https://stackoverflow.com/questions/786 ... ual-values

Вернуться в «C#»