Dummy 1 和 2 不会抛出异常,但 dummy 3 会。此外,dummy2 似乎没有正确运行我的正则表达式(从更长的真实版本来看)。为什么这些不同?第一个在模式中没有空格,另外两个应该忽略空格创建相同的模式
将所有内容都放在一行中效果很好,但更难阅读和编辑。
Regex dummy1 = new Regex(@"(^\s*#(?<test>.*))", RegexOptions.Compiled );
Regex dummy2 = new Regex(@"(^\s*#(?<test>.*)
)", RegexOptions.Compiled | RegexOptions.IgnorePatternWhitespace);
Regex dummy3 = new Regex(@"(^\s*#(?<test>.*))", RegexOptions.Compiled | RegexOptions.IgnorePatternWhitespace);