排除回车的正则表达式返回与回车匹配

时间:2014-12-31 16:40:57

标签: c# .net regex vb.net

考虑以下C#代码:

string s = System.IO.File.ReadAllText("C:\\_Temporary\\MyFile.txt");
var reg = new System.Text.RegularExpressions.Regex("\"Second\" -- (.+)");
var val = reg.Match(s).Groups[1].Value;

或在VB.NET中的这个:

Dim s = System.IO.File.ReadAllText("C:\_Temporary\MyFile.txt")
Dim reg = New System.Text.RegularExpressions.Regex("""Second"" -- (.+)")
Dim val = reg.Match(s).Groups(1).Value

C:\_Temporary\MyFile.txt的内容:

  

"首先" - 这是我的第一个项目。

     

"第二" - 这是我的第二个项目。

     

"第三" - 这是我的第三个项目。

如果RegEx元字符.排除所有行尾字符(实际上,阻止匹配返回"Second" -- here is my second item.下面的其余内容),为什么val \r 1}}以回车符结束({{1}})?

enter image description here

1 个答案:

答案 0 :(得分:5)

根据Microsoft's .NET 4.5 Regex.是“通配符:匹配\n以外的任何单个字符。