Estoy buscando una forma de usar la longitud de un grupo de coincidencias en la expresión de reemplazo con la función C# regex.replace.¿Cómo puedo usar un valor calculado en una operación de reemplazo de RegEx en C#?
Es decir, ¿qué puedo reemplazar ??? con en el siguiente ejemplo para obtener el resultado deseado que se muestra a continuación?
Ejemplo:
val = Regex.Replace("xxx", @"(?<exes>x{1,6})", "${exes} - ???");
salida deseada
X - 3
Nota: Este es un ejemplo extremadamente artificial/simplificada para demostrar la pregunta. Me doy cuenta de que para este ejemplo, una expresión regular no es la forma ideal de hacerlo. Solo confíe en mí que la aplicación de la respuesta en el mundo real es parte de un problema más complejo que requiere el uso de un reemplazo de RegEx aquí.
Gracias. Estaba pensando que tenía que hacer eso, pero antes de seguir por ese camino, solo quería ver si había una palabra clave reconocida por Replace para hacer esta operación más simple. Aún así, tienes mi voto favorable y si nadie responde con una forma abreviada de lograr esto, aceptaré esta respuesta. – JohnFx