Множество условий Contains

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

Astraport

Client
Регистрация
01.05.2015
Сообщения
5 084
Реакции
4 633
Баллы
113
Странно, но никак не хочет правильно работать конструкция из нескольких условий.
Имеются текстовые посты и мне нужно работать только с теми которые НЕ ИМЕЮТ любое из заданных слов.
PHP:
Развернуть Свернуть Копировать
string att = he.InnerText;
if (!att.Contains("text1") && !att.Contains("text2") && !att.Contains("text3")) {
Нужные мне посты не имеют в текстовке заданных кусков, но, тем не менее, не проходят по условию.
Менял && на ||, обрамлял скобками - бесполезно. Что ещё можно попробовать и в чем может быть ошибка?
 
Может всё-таки проблема в текстовке и\или тексте который в этой текстовке ищется?
Набросал кусок кода, отработал как и ожидалось (конкретно в этом коде в лог выведется "good")
C#:
Развернуть Свернуть Копировать
string att = "Hello, World!";

if (!att.Contains("peace") && !att.Contains("heaven") && !att.Contains("hello"))
{
    project.SendInfoToLog("good");
}
else
{
    project.SendErrorToLog("bad");
}

Можно пример текстовки и того, что в ней ищется?
 
  • Оценить
Реакции: Astraport
Может всё-таки проблема в текстовке и\или тексте который в этой текстовке ищется?
Скорее всего.
Можно пример текстовки и того, что в ней ищется?
В том то всё и дело, что это сложно сделать.
По кускам если текст делить, то всё нормально. Но в целом при парсинге полная ерунда происходит.
 
Код:
Развернуть Свернуть Копировать
string att = "Hello, World!";

string[] black = { "world!", "hello", "2hello"};

bool b = black.All(x => att.ToLower().Contains(x));//ture если совпадения по всем словам из блеклиста
project.SendInfoToLog(b.ToString());

bool b2 = black.Any(x => att.ToLower().Contains(x)); //true если хоть одно совпадение из блеклиста
project.SendInfoToLog(b2.ToString());
 

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