Можно ли через оператор IF проверить наличие набора символов в тексте?

vaulroon

Client
Регистрация
20.10.2017
Сообщения
274
Благодарностей
11
Баллы
18
Вот я знаю в if можно использовать следующие сравнения < > == !=, а есть че-то такое, что может проверить в переменной наличие набора символов?
Например, есть текст в переменной {-Variable.Result-} (да тот же post\get-ответ), если в нем содержится набор символов типа https://, то выход по зеленой дорожке, если нет, то выход по красной?
Или это только через C# код можно сделать? Если да, то дайте пример кода, пожалуйста.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 607
Благодарностей
4 599
Баллы
113
можно через регулярку попробовать запарсить тот набор символов. А через иф уже проверять, напарсило что-то, или ничего не нашло и переменная пустая
 
  • Спасибо
Реакции: vaulroon

vaulroon

Client
Регистрация
20.10.2017
Сообщения
274
Благодарностей
11
Баллы
18
А ну да, можно вот так вот сделать, а потом через if сделать два выхода или больше, но уже через switch, если потребуется.
project.Variables["Output"].Value = Regex.Match(project.Variables["Result"].Value, @"(http://|https://").Value ?? "Good";
 
Последнее редактирование:

vaulroon

Client
Регистрация
20.10.2017
Сообщения
274
Благодарностей
11
Баллы
18
Только странно, строчка, приведенная выше, должна присваивать переменной Output значение Good, если найдется совпадение, разве нет? А у меня почему-то выводит в переменную именно найденное совпадение... Эмс...
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 607
Благодарностей
4 599
Баллы
113
C#:
project.Variables["Output"].Value = Regex.IsMatch(project.Variables["Result"].Value, @"(http://|https://")? "Good" : "Bad";
попробуй так
 

obyavkaby

Client
Регистрация
26.05.2017
Сообщения
187
Благодарностей
17
Баллы
18
Добрый день.
Пробую применить ваш код
но что то не получается.

project.Variables["Output"].Value = Regex.IsMatch(project.Variables["Result"].Value, @"(http://|https://")? "Good" : "Bad";

Подскажите куда вставить переменную которую нужно проверить в "Output" или "Result"

Попробовал вставить и туда и туда получаю ответ "Выполнение действия CSharp OwnCode выполняется разбор "(http://|https://" - Нет парных закрывающих скобок )."
 

evgen_po

Client
Регистрация
27.08.2013
Сообщения
847
Благодарностей
528
Баллы
93
Добрый день.
Пробую применить ваш код
но что то не получается.

project.Variables["Output"].Value = Regex.IsMatch(project.Variables["Result"].Value, @"(http://|https://")? "Good" : "Bad";

Подскажите куда вставить переменную которую нужно проверить в "Output" или "Result"

Попробовал вставить и туда и туда получаю ответ "Выполнение действия CSharp OwnCode выполняется разбор "(http://|https://" - Нет парных закрывающих скобок )."
project.Variables["Output"].Value = Regex.IsMatch(project.Variables["Result"].Value, @"(http://|https://)")? "Good" : "Bad";
Скобок не хватает. Так правильно.
 
  • Спасибо
Реакции: obyavkaby

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