Macros.TextProcessing.Regex - Ошибка

  • Автор темы Автор темы SToRm1kkk
  • Дата начала Дата начала
  • Теги Теги
    regex

SToRm1kkk

Client
Регистрация
29.12.2019
Сообщения
19
Реакции
4
Баллы
3
Как правильно использовать регулярку

(?<=number":").*(?=","response)

Использую так, ошибка.

C#:
Развернуть Свернуть Копировать
string text = project.ExecuteMacro(project.Variables["otvet"].Value);
var reg = Macros.TextProcessing.Regex(text, @"(?<=number":").*(?=","response)", "0");
project.Variables["phone"].Value = reg;

1.png
 
сделал так
C#:
Развернуть Свернуть Копировать
var reg = Macros.TextProcessing.Regex(text, @"(?<=number"":"").*(?="",""response)", "0");
 
спецсимволы надо экранировать. \ ну там ковычки например....
Спасибо за помощь.

Хотел перенести регулярное выражение из кубика вот так было если конвертировать кубик в c#

C#:
Развернуть Свернуть Копировать
// Текст для обработки
string text = project.ExecuteMacro(project.Variables["otvet"].Value);
var errorIfEmpty = false;
var regexGroups = Macros.TextProcessing.Regex(text, @"(?<=number":").*(?=","response)", "0");
if (regexGroups.Count == 0)
{
    if (errorIfEmpty) throw new Exception();
}
else
{
    project.Variables["phone"].Value = regexGroups[0].FirstOrDefault();
}

вот так сделал и все работает

C#:
Развернуть Свернуть Копировать
string text = project.ExecuteMacro(project.Variables["otvet"].Value);
string reg = @"(?<=number"":"").*(?="",""response)";
var result = System.Text.RegularExpressions.Regex.Match(text, reg).Value;
project.Variables["phone"].Value = result;
 

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