.*
是...的缩写/简称
[^\r\n]*
所以,如果我们将它们结合起来
[.\r\n]*
为什么我们不能得到一个可以匹配世界上每个字符串的正则表达式呢?
和正则表达式中的大多数特殊字符一样,当.
出现在字符类中时,它代表一个字面上的.
字符。如果你想匹配所有字符,常见的技巧是使用类似以下的内容:
[\s\S]*
另外,您可以使用RegexOptions.Singleline
来指定.
匹配所有字符,并仅使用:
.*
例如:
var input = "foo\r\nbar";
var match = Regex.Match(input, ".*", RegexOptions.Singleline);
Assert.AreEqual(input, match.Value);
.
表示只匹配.
字符,而不包括其他字符。在Windows创建的文件中,字符串仅以\r\n
作为终止符。 - alko