regex

string test =@"Source[123] = Target[4563] And Source[454543] = Target[983743] And Source[12343] = ""abc"" (Source[123] = Target[4563] Or Source[454543] = Target[983743]) And 123 = Target[34332]"; Regex reg =new Regex(@"(?i)(\(?Source\[(?<src>\d+)\]|(?<src>\S+))\s*=\s*(Target\[(?<tar>\d+)\]|(?<tar>\S+))"); MatchCollection mc = reg.Matches(test); foreach (Match m in mc) { richTextBox2.Text += m.Groups["src"].Value +"\n"; richTextBox2.Text += m.Groups["tar"].Value +"\n--------------------\n"; } /*-------输出------- 123 4563 -------------------- 454543 983743 -------------------- 12343 "abc" -------------------- 123 4563 -------------------- 454543 983743 -------------------- 123 34332 -------------------- */

posted @ 2012-09-26 19:00  宇凡的天  阅读(167)  评论(0)    收藏  举报