QString вынуть int |
Здравствуйте, гость ( Вход | Регистрация )
QString вынуть int |
crazymonkey |
27.12.2011, 20:14
Сообщение
#1
|
Студент Группа: Участник Сообщений: 26 Регистрация: 23.6.2011 Пользователь №: 2764 Спасибо сказали: 2 раз(а) Репутация: 0 |
Доброго времени суток.
Подскажите как из строки вида "A_14_R4" вынуть 14 и 4 как int В качестве временного решения использую QString tm = //некая строка; QChar* data1 = tm.data(); ++data; //некторое количесвто раз повторить int tm_wt = data1->toAscii() - 48; |
|
|
zloiia |
28.12.2011, 1:13
Сообщение
#2
|
Студент Группа: Участник Сообщений: 25 Регистрация: 5.5.2011 Пользователь №: 2655 Спасибо сказали: 5 раз(а) Репутация: 0 |
А можно регулярным выражением пройтись. Лично я, если это не критичный кусок кода или чтобы не заморачиваться с позициями, предпочитаю такой вариант. crazymonkey, если у вас еще и длины чисел гуляют, я бы все-таки посмотрел в сторону регулярных выражений. Я не знаю точных подробностей как там у Вас строка может выглядеть, поэтому навскидку накидал пример
Удобство в том что при правильно составленном шаблоне сразу и валидацию строки можно произвести быстро |
|
|
crazymonkey |
28.12.2011, 19:53
Сообщение
#3
|
Студент Группа: Участник Сообщений: 26 Регистрация: 23.6.2011 Пользователь №: 2764 Спасибо сказали: 2 раз(а) Репутация: 0 |
А можно регулярным выражением пройтись. Лично я, если это не критичный кусок кода или чтобы не заморачиваться с позициями, предпочитаю такой вариант. crazymonkey, если у вас еще и длины чисел гуляют, я бы все-таки посмотрел в сторону регулярных выражений. Я не знаю точных подробностей как там у Вас строка может выглядеть, поэтому навскидку накидал пример
Удобство в том что при правильно составленном шаблоне сразу и валидацию строки можно произвести быстро Люблю регулярные выражения, но не счел нужным применения их в этой ситуации. Была бы строка подлиннее, тогда я бы точно пользовался RegExp в полной мере. А для строки такого формата я сделал так 1) Разбил строку по '_' функцией split 2) Воспользовался функциями которые предложил BlueIceScream |
|
|
Текстовая версия | Сейчас: 30.11.2024, 12:56 |