我想答案应该很明显,但我不明白
Regex reg = new Regex("a\r\n", RegexOptions.Singleline | RegexOptions.CultureInvariant);
Console.WriteLine(reg.IsMatch(".*a.*")); // writes FALSE
为什么这写错? 我认为SingleLine允许点匹配任何东西,无论是\ r,\ n,\ r \ n,\ n \ r或其他什么?
答案 0 :(得分:3)
你是倒退的,你想把模式放在Regex
的构造函数中,而不是你想要匹配的。试试这个:
Regex reg = new Regex(".*a.*", RegexOptions.Singleline | RegexOptions.CultureInvariant);
Console.WriteLine(reg.IsMatch("a\r\n")); // writes TRUE