Название: Определение позиции const в строке при помощи QRegExp Отправлено: VAP от Июль 14, 2009, 22:27 Доброго времени суток!
Имеется строка вида: 0:0 0:10:0 0:3. Нужно определить позицию первого и втророго 0:00, при этом 0:1 и 0:3 могут меняться после : в количестве знаков от 1 до 2-х (допустимые значения 0-9). Первое, что пришло в голову использовать QRegExp. Позицию первого 0:00 определяю методом indexOf(), а как определить позицию второго 0:00? Использую регулярное выражение для поиска QRegExp rx("{0:00}"); Кто знает, натолкните на мысль пожалуйста! Название: Re: Определение позиции const в строке при помощи QRegExp Отправлено: VAP от Июль 14, 2009, 22:50 Прошу прощения за свою опечатку QRegExp rx("{0:0}"); В ассистенте вычитал про метод
int QRegExp::pos ( int nth = 0 ) const Приведен пример для текста. В таком случае наверное нужно изменить регулярное выражение для поиска? Название: Re: Определение позиции const в строке при помощи QRegExp Отправлено: ритт от Июль 14, 2009, 23:08 !rtfm: QRegExp::indexIn
Название: Re: Определение позиции const в строке при помощи QRegExp Отправлено: VAP от Июль 14, 2009, 23:16 Спасибо Константин за подсказку! В таком случае поиск будет с конца?
Название: Re: Определение позиции const в строке при помощи QRegExp Отправлено: VAP от Июль 14, 2009, 23:29 QRegExp rx("({0:0}{0:[0-9]}{0:0}{0:[0-9]})"); Всегда возвращает позицию в -1. Наверное вся проблема в регулярном выражении...
Название: Re: Определение позиции const в строке при помощи QRegExp Отправлено: ритт от Июль 15, 2009, 01:46 > Спасибо Константин за подсказку! В таком случае поиск будет с конца?
Цитировать Attempts to find a match in str from position offset (0 by default). If offset is -1, the search starts at the last character; if -2, at the next to last character; etc. > QRegExp rx("({0:0}{0:[0-9]}{0:0}{0:[0-9]})"); Всегда возвращает позицию в -1. !rtfm: QRegExp sub: syntax |