using System;
using System.IO;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
string s = "8Y4H20M 8H7M 8 h 7 M 19 y 19Y";
MatchCollection result = Regex.Matches(s, @"(?<num>[0-9]+)\s*(?<unit>[mhy])", RegexOptions.IgnoreCase);
foreach (System.Text.RegularExpressions.Match m in result) {
Console.WriteLine("{0} / {1}", m.Groups["unit"].Value, m.Groups["num"].Value);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uSU87CnVzaW5nIFN5c3RlbS5UZXh0LlJlZ3VsYXJFeHByZXNzaW9uczsKCnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKCQlzdHJpbmcgcyA9ICI4WTRIMjBNIDhIN00gICAgICAgOCBoIDcgTSAgICAgIDE5IHkgIDE5WSI7CiAgIAkJTWF0Y2hDb2xsZWN0aW9uIHJlc3VsdCA9IFJlZ2V4Lk1hdGNoZXMocywgQCIoPzxudW0+WzAtOV0rKVxzKig/PHVuaXQ+W21oeV0pIiwgUmVnZXhPcHRpb25zLklnbm9yZUNhc2UpOwogICAJCWZvcmVhY2ggKFN5c3RlbS5UZXh0LlJlZ3VsYXJFeHByZXNzaW9ucy5NYXRjaCBtIGluIHJlc3VsdCkgewogICAgICAgCSAgICBDb25zb2xlLldyaXRlTGluZSgiezB9IC8gezF9IiwgbS5Hcm91cHNbInVuaXQiXS5WYWx1ZSwgbS5Hcm91cHNbIm51bSJdLlZhbHVlKTsKICAgCQl9Cgl9Cn0=