无法在两个单词之间的C#中匹配多行字符串

时间:2018-10-14 20:53:04

标签: c# regex string regex-group

我正在尝试将 BEGIN END 之间的内容匹配到来自此字符串 note 的捕获组,称为 numbers 。 strong>:

   string note = @"BEGIN
   781-222-3311
   9789001122
   7817770000 to 7817770010
   END";

我要输入匹配组值的变量是数字。我用来匹配字符串的内容如下:

   string numbers = "";
   Regex numberEncapsulationRegex = new Regex(@"begin\n(?<numbers>.+)\nend", RegexOptions.IgnoreCase);
   Match numberCatch = numberEncapsulationRegex.Match(note);
   if (numberCatch.Success)
   {
       Console.WriteLine("SUCCESS: \n");
       numbers += numberCatch.Groups["numbers"].Value;
   }

我尝试过将RegexOptions.Multiline与RegexOptions.IgnoreCase一起使用,并且还尝试过使用:

   (?i:begin)\n(?<numbers\>.+)\n(?i:end)
   (?i:begin)(\n?<numbers>.+\n)(?i:end)
   (?<=BEGIN)(.*)(?=END)

无法使其正常工作。感谢您的阅读和帮助(如果愿意)。

0 个答案:

没有答案