Парсинг номера и id в смс сервиса сломался

melutsk

Client
Регистрация
03.08.2016
Сообщения
1 348
Благодарностей
1 259
Баллы
113
привет, помогите плз с C кодом. надо номер в переменную ложить, раньше пахало, а сейчас перестало, возможно смс сервис поменял формат чутка.
в переменной GET_number уже есть данные, пример и формат для понимания такой ACCESS_NUMBER:255362:+79164486675
надо спарсить ответ сервиса отсюда
пробую через код

Код:
string GET_number = project.Variables["GET_number"].Value;
// Успех.
if (GET_number.Contains("ACCESS_NUMBER"))
{ 
 Regex r = new Regex(@"([0-9]+)\:([0-9]+)", RegexOptions.IgnoreCase);
 Match m = r.Match(GET_number);
 if(m.Success){
  project.SendInfoToLog("Получили номер на сервисе", true);
  project.Variables["phone_number"].Value = m.Groups[2].Value;
  project.Variables["sms_operation_id"].Value = m.Groups[1].Value;
 }
 // Ошибка.
 else
 {
  project.SendErrorToLog(GET_number, "Ошибка при получении номера", true);
  throw new Exception("");
 }
}
// Ошибка.
else
{
 project.SendErrorToLog(GET_number, "Ошибка при получении номера", true);
 throw new Exception("");
}
но не выходит





где я ошибся?
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
"+" мешает:
C#:
string GET_number = project.Variables["GET_number"].Value;
// Успех.
if (GET_number.Contains("ACCESS_NUMBER"))
{
Regex r = new Regex(@"([0-9]+)\:\+([0-9]+)", RegexOptions.IgnoreCase);
Match m = r.Match(GET_number);
if(m.Success){
  project.SendInfoToLog("Получили номер на сервисе", true);
  project.Variables["phone_number"].Value = m.Groups[2].Value;
  project.Variables["sms_operation_id"].Value = m.Groups[1].Value;
}
// Ошибка.
else
{
  project.SendErrorToLog(GET_number, "Ошибка при получении номера", true);
  throw new Exception("1");
}
}
// Ошибка.
else
{
project.SendErrorToLog(GET_number, "Ошибка при получении номера", true);
throw new Exception("2");
}
 
  • Спасибо
Реакции: lzlmrf и melutsk

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)