¿Por qué .NET regex treat \ n como carácter de final de línea?Clase Regex de .NET y nueva línea
Código de ejemplo:
string[] words = new string[] { "ab1", "ab2\n", "ab3\n\n", "ab4\r", "ab5\r\n", "ab6\n\r" };
Regex regex = new Regex("^[a-z0-9]+$");
foreach (var word in words)
{
Console.WriteLine("{0} - {1}", word, regex.IsMatch(word));
}
y esta es la respuesta que obtengo:
ab1 - True
ab2
- True
ab3
- False
- False
ab5
- False
ab6
- False
¿Por qué la coincidencia de expresiones regulares ab2\n
?
Actualización: No creo Multiline es una buena solución, es decir, quiero validar inicio de sesión para que coincida con los caracteres especificados solamente, y debe ser de una sola línea. Si cambio el constructor para la opción MultiLine ab1, ab2, ab3 y ab6 coinciden con la expresión, ab4 y ab5 no coinciden.
Por qué no muestra AB4 en la salida? –
Supongo que es solo por el hecho de que es la salida exacta de la consola – empi