Все правильно, после regex нужно добавить экшн "логика" в котором прописать '{-Variable.minus_obr-}'!='' (здесь одиночные кавычки используются, можно и обычные двойные), положительный выход будет "Есть такое слово", отрицательный "Нет слова"
А как сделать чтоб он не был чувствителен к регистру?Операции с текстом - Regex ))
(Слово1|слово2|слово3) если нужно найти любое
парсинг текста без учета регистра..А как сделать чтоб он не был чувствителен к регистру?
У меня слова которые я ищу в тексте попадется с большой буквы или все буквы большие, и чета Regex их не находит.
парсинг текста без учета регистра..
(?i)Агентам не звонить
спарсятся все варианты: Агентам не звонить, агентам не звонить, АГЕНТАМ НЕ ЗВОНИТЬ
(?i)(Слово1|слово2|слово3|слово4)Покажи пример на этом (Слово1|слово2|слово3|слово4)
А то я не понял куда ето вставить.
string text = "Подскажите пожалуйста: в переменной слово\"кофемашина\", делаю проверку regexp по ключу \"кофе\" на находит. Может регулярка какая нужна? Ну типа если до или после есть символы, то ответ положительный";//Текст, где ищем
string seekstr = "делаю проверку";//Текст, который ищем
//string regex = "(?i)("+seekstr+")";//составляем сложную регулярку с подстановкой переменной в поиск
string regex = seekstr;//обычный поиск текста
Match str = Regex.Match(text,regex);//ищем
if(str.Success) return 0;//если нашли, выход по зеленой ветке
else throw new Exception("Не найдено");//если нет, по красной
string text = "Подскажите пожалуйста: в переменной слово\"кофемашина\", делаю проверку regexp по ключу \"кофе\" на находит. Может регулярка какая нужна? Ну типа если до или после есть символы, то ответ положительный";//Текст, где ищем
string seekstr = "делаю проверку";//Текст, который ищем
if(text.Contains(seekstr)) return 0;//если нашли, выход по зеленой ветке
else throw new Exception("Не найдено");//если нет, по красной
У тебя разный регистр букв, поэтому он и не находит "кофе" в "Кофемашина". Тут два варианта решения задачи:ключ.*? не прокатывает тоже. В конструкторе прокатывает, а в кубике нетПосмотреть вложение 65782
return Convert.ToString(Regex.Matches("кофемашина","(?i)кофе").Count);
Спасибо за ответы. Но всё таки хотел понять почему не отрабатывает так как я хочу. Регистр одинаковый, так как я переменную Zaglavie привожу к нижнему регистру, а уже потом пытаюсь найти. Хочу разобраться, что бы потом не чпокаться ещё разУ тебя разный регистр букв, поэтому он и не находит "кофе" в "Кофемашина". Тут два варианта решения задачи:
1) В Regex включить функцию не учитывать регистр это делается просто, перед нужным словом ставишь "(?i)" без ковычек.
2) Преобразовать все символы в нижний регистр.
Можешь воспользоваться вот таким снипетом с#
Вместо кофемашина нужно будет вставить свою переменную. Если есть совпадения он вернет значение выше 0, если нет, то соотвественно 0C#:return Convert.ToString(Regex.Matches("кофемашина","(?i)кофе").Count);
Проверьте еще раз, возможно в переменной Kluch у вас есть конечный пробел.В конструкторе прокатывает, а в кубике нет
Всё получилось. Переменную Kluch пропустил через Trim. Видимо когда список ключей из переменной ложу в список, визуально не видно пробел, а он есть. Может в другом дело. Но решение найдено. Спасибо!Проверьте еще раз, возможно в переменной Kluch у вас есть конечный пробел.
Посмотреть вложение 65798
А как искать только целое слово? использую (?i)Cap все отлично работает распознает большие маленькие буквы. если будет слово Capmonstr все равно находит слово cap.Проверьте еще раз, возможно в переменной Kluch у вас есть конечный пробел.
Почитай о модификаторе \bА как искать только целое слово? использую (?i)Cap все отлично работает распознает большие маленькие буквы. если будет слово Capmonstr все равно находит слово cap.