using System;
using System.Linq;
using System.Collections.Generic;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
//var s = "1m ";
var s = "1m aZ";
var pat = @"(?<Expiry>\d+[my])\s+(?<Flag>[a-z][A-Z])?\s*$";
var res = Regex.Replace(s, pat, m => m.Groups["Flag"].Success ?
string.Format("Flag is : {0}.", m.Groups["Flag"].Value) :
string.Format("Expiry is {0}.", m.Groups["Expiry"].Value));
Console.WriteLine(res);
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CnVzaW5nIFN5c3RlbS5UZXh0LlJlZ3VsYXJFeHByZXNzaW9uczsKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCS8vdmFyIHMgPSAiMW0gIjsKCQl2YXIgcyA9ICIxbSBhWiI7CgkJdmFyIHBhdCA9IEAiKD88RXhwaXJ5PlxkK1tteV0pXHMrKD88RmxhZz5bYS16XVtBLVpdKT9ccyokIjsKCQl2YXIgcmVzID0gUmVnZXguUmVwbGFjZShzLCBwYXQsIG0gPT4gbS5Hcm91cHNbIkZsYWciXS5TdWNjZXNzID8gCgkJCXN0cmluZy5Gb3JtYXQoIkZsYWcgaXMgOiB7MH0uIiwgbS5Hcm91cHNbIkZsYWciXS5WYWx1ZSkgOiAKCQkJc3RyaW5nLkZvcm1hdCgiRXhwaXJ5IGlzIHswfS4iLCBtLkdyb3Vwc1siRXhwaXJ5Il0uVmFsdWUpKTsKCQlDb25zb2xlLldyaXRlTGluZShyZXMpOwoJfQp9