例如:MSG 7361012 A 0212 01JAN07 TA M PL
DB ELECTRONIC ENGINE CONTROL (R ENG, CH B)
DB ELECTRONIC ENGINE CONTROL (R ENG, CH A)
MSG 7361012 A 0213 01JAN07 TA M PL
DB ELECTRONIC ENGINE (R ENG, CH B)
EOR
 我想截取两个MSG之间的字符。我用  string Y1 = Regex.Match(Y, "(?<=MSG ).*?(?=MSG)").Value;(上面的那些字符都在Y文本里。)但是用textBox43.Text = Y1;  输出。。框里面什么都没有。。然后我把语句中第二个MSG改为\n就可以截到7361012 A 0212 01JAN07 TA M PL。。请问大神们这需要怎么改??谢谢

解决方案 »

  1.   

    string Y1 = Regex.Match(Y, @"(?is)(?<=MSG\b ).*?(?=MSG\b)").Value;
      

  2.   

    lz,这样可以截取到MSG之间的内容,我刚试过了。 String str1 = "MSG 7361012 A 0212 01JAN07 TA M PL DB ELECTRONIC ENGINE CONTROL (R ENG, CH B) DB ELECTRONIC ENGINE CONTROL (R ENG, CH A) MSG 7361012 A 0213 01JAN07 TA M PL DB ELECTRONIC ENGINE (R ENG, CH B) EOR";
                String str2=Regex.Match(str1,"MSG.*?MSG").Value;
                str2 =str2.Replace("MSG", "");