Я разрабатываю API, связанный с полетом, и мне нужно разделить код перевозчика и номер рейса получаемого кода.Например:
UA775 -> UA and 775
этот случай тривиален.Но существуют различные виды кодов ИАТА и ИКАО, и я определил следующие шаблоны:
letter letter letter {digit}+
letter digit {digit}+
digit letter {digit}+
Итак, три буквы, затем набор цифр, буква и цифра, а затем набор цифр или цифра.затем письмо, а затем куча цифр.В последних двух случаях это должно работать так:
X3567 -> X3 and 567
5U9997 -> 5U and 9997
Есть ли способ, которым я могу сделать это в c # с помощью сопоставления Regex?В настоящее время это мой код, который пропускает два последних случая:
// e.g:
carrierAndFlightNumber = "X3567";
Regex regex = new Regex(@"([a-zA-Z]+)(\d+)");
Match result = regex.Match(carrierAndFlightNumber);
string carrier = result.Groups[1].Value;
string flightNumber = result.Groups[2].Value;
Заранее спасибо.