Russian Qt Forum
Май 03, 2024, 11:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Поиск слова  (Прочитано 8370 раз)
pablo
Гость
« : Март 14, 2005, 19:30 »

Проблема такая:
Надо найти из строки QString определённое слово, т.е не как подсткоку, а слово целиком.
Игнорируя знаки препинания.
Если просто пробовать QString::find то он мне находит только подстроку, а не слово.

Может у вас есть какие нибудь идеи как это реализовать ?
Записан
Zigmar
Гость
« Ответ #1 : Март 14, 2005, 22:25 »

А чем слово отличается от подстроки?
Записан
d_n_k
Гость
« Ответ #2 : Март 14, 2005, 23:14 »

ищешь подстроку, проверяешь по краям на наличие букв(или разделетелей).

еще нужно проверить что в сомой подстроке не было разделителей
Записан
Perchilla
Гость
« Ответ #3 : Март 14, 2005, 23:45 »

Делай поиск через регулярное выражение
Код:
int i = string.find( QRegExp("\Wслово\W"), 0 );


так, примерно, насколько я могу судить, если тут с перлом расхождений нет...
Записан
Zigmar
Гость
« Ответ #4 : Март 15, 2005, 01:20 »

А, сорри, не понял вопроса. Слова искать - это regexp:
Код:

\bword\b

\b - это признак границы слова, а не конкретный символ. За подробностями, см. доки по регэкспам, например в том-же Qt.

А вышеупомянутый "\Wслово\W" не будет работать, если слово в начали или в конце строки.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.043 секунд. Запросов: 20.