В этом случае, похоже, что это Guid - если вы используете .NET 4, самый простой подход, вероятно, заключается в использовании Guid.TryParse
... но если вам нужно использоватьregex, это, вероятно, будет:
^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$
Другими словами, начало строки, 8 шестнадцатеричных цифр, тире, 4 шестнадцатеричных цифры, тире, 4 шестнадцатеричных цифры, тире, 4 шестнадцатеричных цифры, тире, 12 шестнадцатеричныхцифры, конец строки.Обратите внимание, что я предположил , что любые буквенные символы будут в верхнем регистре, а не в нижнем.
Вероятно, стоит создать это только один раз и, возможно, скомпилировать, так что в итоге вы получите:
private static readonly Regex GuidPattern = new Regex
("^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$",
RegexOptions.Compiled);
public static bool IsValidRegex(string inputString)
{
return GuidPattern.IsMatch(inputString);
}