bien, este me está volviendo loco .... tengo una cadena que se forma así:expresión regular que coincide con una nueva línea ( n) en C#
var newContent = string.Format("({0})\n{1}", stripped_content, reply)
newContent mostrará como:
(texto antiguo)
texto nuevo
Necesito una expresión regular que elimine el texto entre paréntesis con el paréntesis incluido Y el carácter de nueva línea.
Lo mejor que puedo llegar a decir:
const string regex = @"^(\(.*\)\s)?(?<capture>.*)";
var match= Regex.Match(original_content, regex);
var stripped_content = match.Groups["capture"].Value;
Esto funciona, pero quiero específicamente para que coincida con la nueva línea (\n
), no cualquier espacio en blanco (\s
) Sustitución \s
con \n
\\n
o \\\n
hace No trabajo.
¡Por favor, ayúdame a mantener mi cordura!
EDIT: un ejemplo:
public string Reply(string old,string neww)
{
const string regex = @"^(\(.*\)\s)?(?<capture>.*)";
var match= Regex.Match(old, regex);
var stripped_content = match.Groups["capture"].Value;
var result= string.Format("({0})\n{1}", stripped_content, neww);
return result;
}
Reply("(messageOne)\nmessageTwo","messageThree") returns :
(messageTwo)
messageThree
¿Podría publicar un programa corto pero completo que demuestre el problema? Me resulta difícil reconstruir en este momento. –