Just use a lambda for the predicate, and then use the power of standard algorithms and short-circuiting. No need for any convoluted or exotic control-flow:
void ParsingTools::filterStrings (QStringList& list)
{
for (int i = list.size(); i--;) {
const auto& s = list[i];
auto contains = [&](const QString& x) { return s.contains(x); };
if (s.size() != m_Length
|| !std::all_of(m_Include.begin(), m_Include.end(), contains)
|| std::any_of(m_Exclude.begin(), m_Exclude.end(), contains))
filterStringOut(i);
}
}