using System;
using System.Linq;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var str = "/1-XXXX/2-YYYY/9-ZZZZ/1-AAAA/3-BBBB/5-CCCC/8=NNNN/9=DDDD/1-QQQQ/2-WWWW/3=PPPP/7-EEEE";
var res = Regex.Matches(str, @"(?<fldNo>1)-(?'fldData'[^/]+)(?:/(?<fldNo>[2-9])[-=](?'fldData'[^/]+))*")
.Cast<Match>()
.Select(p => p.Groups["fldNo"].Captures.Cast<Capture>().Select(m => m.Value)
.Zip(p.Groups["fldData"].Captures.Cast<Capture>().Select(m => m.Value),
(first, second) => first + "=" + second))
.ToList();
foreach (var t in res)
Console.WriteLine(string.Join(" ", t));
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLlRleHQuUmVndWxhckV4cHJlc3Npb25zOwpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJdmFyIHN0ciA9ICIvMS1YWFhYLzItWVlZWS85LVpaWlovMS1BQUFBLzMtQkJCQi81LUNDQ0MvOD1OTk5OLzk9RERERC8xLVFRUVEvMi1XV1dXLzM9UFBQUC83LUVFRUUiOwoJCXZhciByZXMgPSBSZWdleC5NYXRjaGVzKHN0ciwgQCIoPzxmbGRObz4xKS0oPydmbGREYXRhJ1teL10rKSg/Oi8oPzxmbGRObz5bMi05XSlbLT1dKD8nZmxkRGF0YSdbXi9dKykpKiIpCgkJICAgIC5DYXN0PE1hdGNoPigpCgkJICAgIC5TZWxlY3QocCA9PiBwLkdyb3Vwc1siZmxkTm8iXS5DYXB0dXJlcy5DYXN0PENhcHR1cmU+KCkuU2VsZWN0KG0gPT4gbS5WYWx1ZSkKCQkgICAgCQkuWmlwKHAuR3JvdXBzWyJmbGREYXRhIl0uQ2FwdHVyZXMuQ2FzdDxDYXB0dXJlPigpLlNlbGVjdChtID0+IG0uVmFsdWUpLCAKCQkgICAgCQkJKGZpcnN0LCBzZWNvbmQpID0+IGZpcnN0ICsgIj0iICsgc2Vjb25kKSkKCQkgICAgLlRvTGlzdCgpOyAKCQkgICAgZm9yZWFjaCAodmFyIHQgaW4gcmVzKQoJCQkJQ29uc29sZS5Xcml0ZUxpbmUoc3RyaW5nLkpvaW4oIiAiLCB0KSk7Cgl9Cn0=