Проблема в следующем ищу из LineEdit слова в тексте, если писать одно слово на русском то ищет если два через пробел то нет, на английском вроде ищет и 2 и больше для того же выражения, почему так?
Вот небольшой кусочек кода
Search::Search(QWidget *parent,Indexation indexation1,QString &find){
indexation = indexation1;
if (!find.isEmpty()) {
// QRegExp rx("[\\w | \\s] + ");
QRegExp rx("(\\w+)");
QString wholeString = find;
wholeString = wholeString.toLower();
QStringList words;
int pos = 0;
while ((pos = rx.indexIn(wholeString, pos)) != -1) {
words << rx.cap(1);
pos += rx.matchedLength();
}
int size = indexation.keyWords.size();
for(int i = 0; i < size; i++){
QString word = indexation.keyWords.at(i).word;
for( int j = 0; j < words.length(); j++)
if(word == words.at(j))
hitedIndexes.append(indexation.keyWords.at(i).indexes);
}
accept();
return;
}
}
Кто может подскажите, кодек прописал
QTextCodec *codec = QTextCodec::codecForName("CP1251");
QTextCodec::setCodecForTr(codec);