using System; using System.Text.RegularExpressions; public class Test { public static void Main() { string request= @"TST00009 DCA1S211E RH/07FEB F N LD 13FEB13 OD SANSAN SI T-E FXP/R,U 3.MACDORMAN/SAM CORBIN (CHD) 1 SAN BA 272 N 24JUN 825P OK NHXUQCNJ CH 24JUN24JUN 1PC 2 O LHR BA 273 N 07AUG 325P OK NHXUQCNJ CH 07AUG07AUG 1PC SAN FARE U USD 492.00 TX001 X USD 458.00YQAC TX002 X USD 5.50YCAE TX003 X USD 17.20USAP TX004 X USD 17.20USAS TX005 X USD 5.00XACO TX006 X USD 7.00XYCR TX007 X USD 2.50AYSE TX008 X USD 105.61GBAD TX009 X USD 62.66UBAS TX010 X USD 4.50XF TOTAL USD 1177.17 GRAND TOTAL USD 1177.17 SAN BA LON M/BT NHXUQCNJ/CH BA SAN M/BT NHXUQCNJ/CH END ROE1.000000 XF SAN4.5 BT1195364*BA *FM0.00 40.FE BA ONLY/NONREF/NONEND SEE GGAIRBAGUSA -BG:BA 45.FM *M*0.00A 46.FP CHECK"; /* string pattern = @"FXP/R,U\s+(?.+?) \(CHD\).*FARE U USD\s+(?\d+\.\d{2}).*GRAND TOTAL USD\s+(?\d+\.\d{2}).*45\.FM (?\S+).*46\.FP (?\S+)"; Match m = Regex.Match(request, pattern, RegexOptions.Singleline); Console.WriteLine("Name: {0}", m.Groups["name"]); Console.WriteLine("Fare: {0}", m.Groups["fare"]); Console.WriteLine("Total: {0}", m.Groups["total"]); Console.WriteLine("Commission: {0}", m.Groups["commission"]); Console.WriteLine("FOP: {0}", m.Groups["FOP"]); */ Match m1 = Regex.Match(request, @"FXP/R,U\s+(.+?) \(CHD\)", RegexOptions.Singleline); string name = m1.Groups[1].Value; Match m2 = Regex.Match(request, @"FARE U USD\s+(\d+\.\d{2})"); string fare = m2.Groups[1].Value; Match m3 = Regex.Match(request, @"GRAND TOTAL USD\s+(\d+\.\d{2})"); string total = m3.Groups[1].Value; Match m4 = Regex.Match(request, @"45\.FM (\S+)"); string commission = m4.Groups[1].Value; Match m5 = Regex.Match(request, @"46\.FP (\S+)"); string fop = m5.Groups[1].Value; Console.WriteLine("Name: {0}", name); Console.WriteLine("Fare: {0}", fare); Console.WriteLine("Total: {0}", total); Console.WriteLine("Commission: {0}", commission); Console.WriteLine("FOP: {0}", fop); } }