Substitua apenas alguns grupos pelo Regex
Suponhamos que eu tenha o seguinte regex:
-(\d+)-
e eu quero substituir, usando C #, o Grupo 1(\d+)
comAA
, obter
-AA-
gora estou substituindo-o usando:
var text = "example-123-example";
var pattern = @"-(\d+)-";
var replaced = Regex.Replace(text, pattern, "-AA-");
Mas eu realmente não gosto disso, porque se eu mudar o padrão para combinar_(\d+)_
em vez disso, terei que alterar a sequência de substituição por_AA_
também, e isso é contrário ao princípio DR
Estou procurando algo como:
Mantenha o texto correspondente exatamente como está, mas altere o Grupo 1 porthis text
e grupo 2 poranother text
...
Editar
Aquilo foi apenas um exemplo. Estou apenas procurando uma maneira genérica de fazer o que eu disse acim
Deve trabalhar para:
anything(\d+)more_text
e qualquer padrão que você possa imagina
Tudo o que quero fazer é substituir apenas grupos e manter o resto da partid