在电子邮件正文中给出以下文字:
不要修改上面的主题行。发送此电子邮件表示我要求延迟将此产品更改通知(PCN)分发到9001(Qwest)。此延迟请求的基本原理如下:
这就是我需要捕获的原因。
它可以长很多行。
并且持续很长时间
我正在尝试捕获“......下面提供的所有文字:”。
传递给BodyRegex的模式是:
.*provided below:(?<1>.*)
正在执行的代码是:
Regex regex2 = new Regex(BodyRegex, RegexOptions.IgnoreCase | RegexOptions.Multiline);
string note = null;
Match m2 = regex2.Match(body);
if (m2.Success)
{
note = m2.Groups[1].Value;
}
未找到匹配项。
我需要使用哪种匹配模式来捕获“下面提供的所有文本行”?
答案 0 :(得分:5)
部分(?...)是预见语法,这不是你想要的。
你可能想要试一试:
(?<=provided below:)[.|\n|\W|\w]*
我遇到过.NET无法按照您期望的方式识别行尾字符的问题。*,因此或条件。
答案 1 :(得分:3)