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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QString::split + QRegExp  (Прочитано 8779 раз)
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« : Декабрь 30, 2009, 17:24 »

Имеется строка вида "UnitedStates". Неполучается составить регулярное выражение для резделения этих слов. Результатом должен быть список из двух слов: "United", "States".

Регулярное выражение вида:

Код
C++ (Qt)
QString name("UnitedStates");
name.split(QRegExp("[A-Z]"), QString::SkipEmptyParts);

дает

Цитировать
"nited", "tates"

У кого будут какие идеи?
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Декабрь 30, 2009, 17:48 »

ИМХО, никак. Грустный
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Rcus
Гость
« Ответ #2 : Декабрь 30, 2009, 18:00 »

А мне кажется можно через QRegExp::indexIn и выражение с negative lookahead assertion (?!E)
Записан
BRE
Гость
« Ответ #3 : Декабрь 30, 2009, 18:05 »

А мне кажется можно через QRegExp::indexIn и выражение с negative lookahead assertion (?!E)
+1
Если отказаться от split, который и убирает большие буквы считая их разделителями, то все должно получиться.
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #4 : Декабрь 30, 2009, 18:10 »

Спасибо за советы, буду пробовать.
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
zenden
Гость
« Ответ #5 : Декабрь 30, 2009, 20:22 »

Код
C++ (Qt)
name.split(QRegExp("(?=[A-Z])"), QString::SkipEmptyParts);
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #6 : Декабрь 31, 2009, 01:43 »

zenden, спасибо! Работает!
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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