示例文本如下 - 它是正在解析的更大文档的一部分(每行在结束之前都有尾随空格):
Procedure Information
Primary Procedure:
LAPAROSCOPIC PARTIAL LEFT NEPHRECTOMY /ROBOTIC WITH
INTRAOPERATIVE ULTRASOUND
Procedure Start: 5/4/2009 9:01:00AM
Procedure Stop: 5/4/2009 3:29:00PM
我想从这个字符串中提取“主要程序”数据,在这种情况下是“腹腔镜下部分左侧肾脏切除术/机器人超声检查”。
以下表达式标识主要过程位置并设法拉出值的第一行但不是两行(使用多行标记):
^Primary Procedure:\s*([\w\S ]*\w)\s*$
我无法弄清楚一个表达式来获得所需值的两行。该值很可能总是1或2行。而且我们也可能依赖于下一行开头的“Procedure Start:”字符串的存在。
答案 0 :(得分:0)
new Regex(@"Primary Procedure:\s*(.*)\s*Procedure Start",
RegexOptions.Singleline).Match(str).Groups[1]