Что я делаю не так?
Не используйте QRegExp, если в Qt5, то сразу переходите на QRegularExpression. Если же вы на Qt4, то сочувствую: будете страдать от ограничений. Мне в свое время пришлось организовать вызовы perl из своей программы на Qt4, что мои сложные регулярки работали.
The number of added features, when compared with QRegExp, is huge. A partial list is:
it supports lazy (non greedy) and possessive quantifiers;
it supports lookbehind assertions;
it supports Perl’s /s, /m, /x, /u regexp modifiers;
it properly supports Perl’s global matching
it supports named capturing groups;
it can properly handle non-BMP character ranges;
it supports soft and hard partial matching;
it supports subroutine calls/references
it supports comments;
it supports conditional patterns.
Most of these have been long-time nuisances with QRegExp. Now they’re gone.