string regex = @"{ Engineer = (?<Name>.*), HandHeldAvailability";
string input = "{ Engineer = CARL HARRISON, HandHeldAvailability = H, HASHHT = True, HHTSTATUS = }";
string engineerName = "";
Match match = Regex.Match(input, regex);
if(match.Success && match.Groups["Name"] != null)
{
engineerName = match.Groups["Name"].Value;
}
Regex позволяет вам проверить, совпадает ли входная строка (В противном случае совпадет. Ошибка будет ложной) и позволяет легко изменить ее в случае изменения формата ввода. Вы также можете легко подобрать другие части.
Редактировать: Если вы часто вызываете эту функцию (то есть в цикле), вы также можете скомпилировать регулярное выражение:
public class YourDataClass {
private static Regex regex = new Regex(@"{ Engineer = (?<Name>.*), HandHeldAvailability", RegexOptions.Compiled);
public string GetNameFromInput(string input) {
var result = string.Empty;
Match match = regex.Match(input);
if(match.Success && match.Groups["Name"] != null)
{
result = match.Groups["Name"].Value;
}
return result;
}
}