public static void Main()
var (rel, wet) = ParseGroupName("R0000");
Console.WriteLine($"R0000 = {rel}, {wet}");
(rel, wet) = ParseGroupName("R0001_");
Console.WriteLine($"R0001_ = {rel}, {wet}");
(rel, wet) = ParseGroupName("R0002_JW");
Console.WriteLine($"R0002_JW = {rel}, {wet}");
(rel, wet) = ParseGroupName("R0003_WLZ");
Console.WriteLine($"R0003_WLZ = {rel}, {wet}");
(rel, wet) = ParseGroupName("R0004_GEMWMO");
Console.WriteLine($"R0004_GEMWMO = {rel}, {wet}");
public enum WetType { NVT, WLZ, JW, WMO, }
private static (string, WetType?) ParseGroupName(string groupname)
if (string.IsNullOrWhiteSpace(groupname))
var index = groupname.IndexOf('_');
if (groupname[^2..] == "JW")
else if (groupname[^3..] == "WMO")
index = groupname.Length;
return int.TryParse(groupname[1..index], out var relatienummer)
? (relatienummer.ToString(), wet)