using System.Text.RegularExpressions;
public static void Main()
Console.WriteLine("Hello World");
var reg = new Regex("^(\\s*(?<currencyBefore>[^\\d\\s]*)\\s*)?(?<num1>\\d+)((?<splitter>[^\\d\\s]+)\\s*(?<num2>\\d*))?(\\s*(?<currencyAfter>[^\\s]*)\\s*)?$");
var match = reg.Match("30разделитель20 денег");
Console.WriteLine("match: "+match.Success);
Console.WriteLine("currencyBefore : |{0}|", match.Groups["currencyBefore"].Value);
Console.WriteLine("num1 : |{0}|", match.Groups["num1"].Value);
Console.WriteLine("splitter : |{0}|", match.Groups["splitter"].Value);
Console.WriteLine("num2 : |{0}|", match.Groups["num2"].Value);
Console.WriteLine("currencyAfter : |{0}|", match.Groups["currencyAfter"].Value);