using System.Collections.Generic;
using System.Text.RegularExpressions;
public static void Main()
Regex regex = new(@"^([a-zA-Z0-9-_]{1,50})!([a-zA-Z0-9-_]{1,50})!([0-9-_\(\)]+)(.[a-zA-Z0-9]+)$", RegexOptions.Singleline);
string fileName = string.Format("{0}!{1}!{2}.jpeg", Guid.NewGuid(), "RMA001", "01");
Match match = regex.Match(fileName);
Console.WriteLine(match.Groups[1].Value);
Console.WriteLine(match.Groups[2].Value);
Console.WriteLine(match.Groups[3].Value);