LINUX.ORG.RU

[Qt4] Какая функция из библиотеки QString разбивает строку на слова?


0

1

Здраствуйте, ув. программисты. Подскажите пожалуйста: какие ф-и от бибилиотеки QString разбивают строку на слова и помогают обрабатывать их. Суть задания, что мне надо найти в тексте все слова, которые употребляются 1 раз и то которое там используется наибольшее количество раз. Сначала я открываю файл и загружаю его в строку(поток): QString fileName;

QFile openFile;

if(str.isEmpty())

fileName = QFileDialog::getOpenFileName(this,«Open file»);

else

fileName = str;

openFile.setFileName(fileName);

if(openFile.exists(fileName))

{

openFile.open(QIODevice::ReadOnly);

QTextStream stream(&openFile);

QString text(stream.readAll());

Теперь я хочу разбить его на слова и по алгоритму обработать его для выполнения задания. Вопрос в том, что существует ли такая ф-я, если нет, то каким наилучшим методом его выполнить?



Последнее исправление: ArisDoks (всего исправлений: 1)

для начала нужно научиться правильно оформлять топик.

mono ★★★★★
()
Ответ на: комментарий от flareguner

Во-первых есть три вида ф-и count

int count ( const QString & str, Qt::CaseSensitivity cs = Qt::CaseSensitive ) const int count ( QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive ) const int count ( const QRegExp & rx ) const

А во-вторых как интовская ф-я мне позволит обрабатывать слова? Она же по идеи просто считает количество слов в потоке.

ArisDoks
() автор топика
Ответ на: комментарий от rival

Ух ты, спасибо. Только вот еще один вопрос: Эта функция в list(согласно примеру) загружает уже отдельные слова, но все сразу. Как теперь выуживать их от туда по одному и сравнивать?

ArisDoks
() автор топика
Ответ на: комментарий от Dendy

thanks. точно, там же возвращается ссылка на новый объект, а не сам объект, затупил…

arsi ★★★★★
()

QStringList:split()

Led ★★★☆☆
()
Ответ на: комментарий от Pi

С кутями или без, лишь бы документацию читали…

Deleted
()
Ответ на: комментарий от Obey-Kun

лабораторные программированием не считаются :)

Pi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.