using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Linq;
public class Test
{
public static void Main()
{
var pat = @"(?<Attribute>\w+)=(?<Value>(?:(?!-{3})\S)+)";
var s = "---MyValue=4497-DD616-1134-34---\r\n---MyNum=72 MyPercent=17% --- ";
var res = Regex.Matches(s, pat)
.Cast<Match>()
.ToDictionary(
m => m.Groups["Attribute"].Value,
m => m.Groups["Value"].Value
);
foreach (var kvp in res)
{
Console.WriteLine("[{0}, {1}]", kvp.Key, kvp.Value);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRleHQuUmVndWxhckV4cHJlc3Npb25zOwp1c2luZyBTeXN0ZW0uTGlucTsKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCXZhciBwYXQgPSBAIig/PEF0dHJpYnV0ZT5cdyspPSg/PFZhbHVlPig/Oig/IS17M30pXFMpKykiOwoJCXZhciBzID0gIi0tLU15VmFsdWU9NDQ5Ny1ERDYxNi0xMTM0LTM0LS0tXHJcbi0tLU15TnVtPTcyIE15UGVyY2VudD0xNyUgLS0tICI7CgkJdmFyIHJlcyA9IFJlZ2V4Lk1hdGNoZXMocywgcGF0KQoJCQkuQ2FzdDxNYXRjaD4oKQoJCQkuVG9EaWN0aW9uYXJ5KAoJCQkJbSA9PiBtLkdyb3Vwc1siQXR0cmlidXRlIl0uVmFsdWUsCgkJCQltID0+IG0uR3JvdXBzWyJWYWx1ZSJdLlZhbHVlCgkJCSk7CgkJZm9yZWFjaCAodmFyIGt2cCBpbiByZXMpCgkJewoJCQlDb25zb2xlLldyaXRlTGluZSgiW3swfSwgezF9XSIsIGt2cC5LZXksIGt2cC5WYWx1ZSk7CgkJfQoJfQp9