Russian Qt Forum

Qt => Общие вопросы => Тема начата: aksystems от Май 05, 2008, 11:53



Название: Как организовать поиск по маске в QString?
Отправлено: aksystems от Май 05, 2008, 11:53
Вопрос такой....
Как организовать поиск по маске в QString и чтобы маска содержала *?


Название: Re: Как организовать поиск по маске в QString?
Отправлено: Пантер от Май 05, 2008, 11:56
QRegExp  в помощь.


Название: Re: Как организовать поиск по маске в QString?
Отправлено: aksystems от Май 05, 2008, 12:20
Я не совсем понимаю что надо написать в QRegExp, чтобы например задать маску *X04?


Название: Re: Как организовать поиск по маске в QString?
Отправлено: DenKor от Май 05, 2008, 13:26
Вопрос такой....
Как организовать поиск по маске в QString и чтобы маска содержала *?

А что мешает, тебе игнорировать эту маску при поиске.

Например надо найти вхождение по маске "*.txt"
Ты ищещь сразу индекс подстроки ".txt" - QString:indexOf(...)


Название: Re: Как организовать поиск по маске в QString?
Отправлено: Вячеслав от Май 05, 2008, 14:16
Я не совсем понимаю что надо написать в QRegExp, чтобы например задать маску *X04?
QString QRegExp::escape ( const QString & str ) ?


Название: Re: Как организовать поиск по маске в QString?
Отправлено: Tonal от Май 06, 2008, 07:13
* у тебя  - это любое количество любых символов?
Тогда в регэкспах это будет ".*".


Название: Re: Как организовать поиск по маске в QString?
Отправлено: sendevent от Май 06, 2008, 10:52
Для построения регекспов может помочь /examples/tools/regexp, для удобства можно поменять textComboBox на QTextEdit и добавить что нить вроде QRegExp& getRegExp() const;