使用C#截取记事本中的文本

文本内容如下,要截取到的内容【power on all,相对应大括号里Run=后面的内容】,【power off all,相对应大括号里run=后面的内容】

Page1{
INIT{
}
TERM{
}
delay=1000

     power on all{ 

XPosition=250
YPosition=250
Width=100
Height=35
Run=[com3 115200]#@|CRC|Y(32)00(32)0(32)43690(32)43690(32)43690+#@|CRC|Y(32)01(32)0(32)43690(32)43690(32)43690+#@|CRC|Y(32)02(32)0(32)43690(32)43690(32)43690+#@|CRC|Y(32)03(32)0(32)43690(32)43690(32)43690+#@|CRC|Y(32)04(32)0(32)43690(32)43690(32)43690+#@|CRC|Y(32)05(32)0(32)43690(32)43690(32)43690+#@|CRC|Y(32)06(32)0(32)43690(32)43690(32)43690+#@|CRC|Y(32)07(32)0(32)43690(32)43690(32)43690
Type=1
}

power off all{
XPosition=450
YPosition=250
Width=100
Height=35
Run=[com3 115200]#@|CRC|Y(32)00(32)0(32)21845(32)21845(32)21845+#@|CRC|Y(32)01(32)0(32)21845(32)21845(32)21845+#@|CRC|Y(32)02(32)0(32)21845(32)21845(32)21845+#@|CRC|Y(32)03(32)0(32)21845(32)21845(32)21845+#@|CRC|Y(32)04(32)0(32)21845(32)21845(32)21845+#@|CRC|Y(32)05(32)0(32)21845(32)21845(32)21845+#@|CRC|Y(32)06(32)0(32)21845(32)21845(32)21845+#@|CRC|Y(32)07(32)0(32)21845(32)21845(32)21845
Type=1
}
}

正则表达式
(?is)(?<=Run\=).*?(?=\nType)

这种结构化文本很容易分析的,按照结构的定义逐行读取分析,可以取到所有的信息。

(?is)(?<=Run=).*?Type=\d+