Как сделать проверку на c#?

  • Автор темы Автор темы mrgreyarbtr
  • Дата начала Дата начала

mrgreyarbtr

Пользователь
Регистрация
01.10.2022
Сообщения
99
Реакции
30
Баллы
18
есть переменная list в ней может быть любое значение


если в ней содержаться слова "sale" "saled" "shop" то нужно выйти по красной ветке


как такое сделать на c#?
 
есть переменная list в ней может быть любое значение


если в ней содержаться слова "sale" "saled" "shop" то нужно выйти по красной ветке


как такое сделать на c#?
C#:
Развернуть Свернуть Копировать
string[] words =new[]{ "sale" ,"saled","shop"};
string list = "если в ней содержаться слова sale saled shop то нужно выйти по красной ветке";

for(int i=0;i<words.Length;i++) {
    if(list.Contains(words[i])) throw new Exception(string.Format("В переменной содержится слово: {0}", words[i]));
}
99120
 
  • Оценить
Реакции: mrgreyarbtr
C#:
Развернуть Свернуть Копировать
string[] words =new[]{ "sale" ,"saled","shop"};
string list = "если в ней содержаться слова sale saled shop то нужно выйти по красной ветке";

for(int i=0;i<words.Length;i++) {
    if(list.Contains(words[i])) throw new Exception(string.Format("В переменной содержится слово: {0}", words[i]));
}
Посмотреть вложение 99120
огонь!
 
C#:
Развернуть Свернуть Копировать
string[] words =new[]{ "sale" ,"saled","shop"};
string list = "если в ней содержаться слова sale saled shop то нужно выйти по красной ветке";

for(int i=0;i<words.Length;i++) {
    if(list.Contains(words[i])) throw new Exception(string.Format("В переменной содержится слово: {0}", words[i]));
}
Посмотреть вложение 99120
а можно сделать так, чтобы выставить выставить пустое значение переменной var1 если значение присутствует в строке "sale" ,"saled","shop" без выхода по красной?
 
а можно сделать так, чтобы выставить выставить пустое значение переменной var1 если значение присутствует в строке "sale" ,"saled","shop" без выхода по красной?
C#:
Развернуть Свернуть Копировать
string[] words =new[]{ "sale" ,"saled","shop"};
string list = "выставить пустое значение переменной var1 если значение присутствует в строке sale, saled, shop без выхода по красной ";

for(int i=0;i<words.Length;i++) {
    if(list.Contains(words[i])) project.Variables["var1"].Value = string.Empty;
}
 
  • Оценить
Реакции: mrgreyarbtr
C#:
Развернуть Свернуть Копировать
string[] words =new[]{ "sale" ,"saled","shop"};
string list = "выставить пустое значение переменной var1 если значение присутствует в строке sale, saled, shop без выхода по красной ";

for(int i=0;i<words.Length;i++) {
    if(list.Contains(words[i])) project.Variables["var1"].Value = string.Empty;
}
мастер)
 
Главное что работает.
В идеальном случае, оформлять такой код чуток по другому (проверки выносить в функции или методы).
Я просто сознательно пытался писать максимально упрощённо, чтобы не запутывать какие-то специфическими конструкциями.
Пример:
C#:
Развернуть Свернуть Копировать
Func<string[], string, bool> MyCheck = delegate (string[] array, string line){
    bool temp = false;
    for(int i=0; i<array.Length; i++) {
        if(line.Contains(array[i])) {
            temp = true;
            break;
        }
    }
    return temp;
};

string[] words =new[]{ "sale" ,"saled","shop"};
string list = "если в ней содержаться слова sale saled shop то нужно выйти по красной ветке";

bool check = MyCheck(words, list);
if(check) {
    // Нашли подстроку - здесь выполняем какой-то код когда совпадение найдено
    project.Variables["var1"].Value = string.Empty;
}
else {
    // Строка не найдена  - здесь выполняем какой-то код когда совпадение найдено
}
 
  • Оценить
Реакции: mrgreyarbtr
C#:
Развернуть Свернуть Копировать
string[] words =new[]{ "sale" ,"saled","shop"};
string list = "выставить пустое значение переменной var1 если значение присутствует в строке sale, saled, shop без выхода по красной ";

for(int i=0;i<words.Length;i++) {
    if(list.Contains(words[i])) project.Variables["var1"].Value = string.Empty;
}
последний вопрос, не сочтите за наглость) а там можно проверять текст из нескольких переменных? например переменные sold fold done и проверить в них содержание этих слов?)
 
последний вопрос, не сочтите за наглость) а там можно проверять текст из нескольких переменных? например переменные sold fold done и проверить в них содержание этих слов?)
C#:
Развернуть Свернуть Копировать
Func<string[], string, bool> MyCheck = delegate (string[] array, string line){
    bool temp = false;
    for(int i=0; i<array.Length; i++) {
        if(line.Contains(array[i])) {
            temp = true;
            break;
        }
    }
    return temp;
};

bool check = false;

string[] words =new[]{ "sale" ,"saled","shop"};

// проверка done
check = MyCheck(words, project.Variables["done"].Value);
if(check) { // найден
    project.Variables["done"].Value = string.Empty; // установить пустое значение в done
}

// проверка fold
check = MyCheck(words, project.Variables["fold"].Value);
if(check) { // найден
    project.Variables["fold"].Value = string.Empty;  // установить пустое значение в fold
}

// проверка sold
check = MyCheck(words, project.Variables["sold"].Value);
if(check) { // найден
    project.Variables["sold"].Value = string.Empty; // установить пустое значение в sold
}
 
  • Оценить
Реакции: mrgreyarbtr
с
C#:
Развернуть Свернуть Копировать
Func<string[], string, bool> MyCheck = delegate (string[] array, string line){
    bool temp = false;
    for(int i=0; i<array.Length; i++) {
        if(line.Contains(array[i])) {
            temp = true;
            break;
        }
    }
    return temp;
};

bool check = false;

string[] words =new[]{ "sale" ,"saled","shop"};

// проверка done
check = MyCheck(words, project.Variables["done"].Value);
if(check) { // найден
    project.Variables["done"].Value = string.Empty; // установить пустое значение в done
}

// проверка fold
check = MyCheck(words, project.Variables["fold"].Value);
if(check) { // найден
    project.Variables["fold"].Value = string.Empty;  // установить пустое значение в fold
}

// проверка sold
check = MyCheck(words, project.Variables["sold"].Value);
if(check) { // найден
    project.Variables["sold"].Value = string.Empty; // установить пустое значение в sold
}
супер просто!
 

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