Russian Qt Forum
Июля 02, 2025, 09:17
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Составить регулярное выражение
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Составить регулярное выражение (Прочитано 4344 раз)
kibsoft
Хакер
Offline
Сообщений: 625
Составить регулярное выражение
«
:
Декабря 10, 2009, 15:40 »
Есть такие строки:
Цитировать
STRT.M 1018.00: Начальная глубина
Т.е. какая-то мнемоника, куча пробелов(могут табы быть), потом число, затем двоеточие и через пробел комментарий.
А чтобы получить мне эти значения в QStringList - надо вызвать QRegExp::capturedTexts()?
Записан
http://kibsoft.ru
- Download the Qt Media Encoding Library here
The apps that were written using QtMEL:
http://srecorder.com
- Screen recording software
uriel
Гость
Re: Составить регулярное выражение
«
Ответ #1 :
Декабря 10, 2009, 16:41 »
Можно как-нибудь так: ^(\S*)\s*([0-9.]*): (.*)$
Только QRegExp::capturedTexts() вернёт по 0-му индексу всё совпавшее выражение целиком, а конкретные группы будут в 1-ом, 2-ом и 3-ем элементах.
Записан
kibsoft
Хакер
Offline
Сообщений: 625
Re: Составить регулярное выражение
«
Ответ #2 :
Декабря 10, 2009, 16:54 »
Пишет так:
Цитировать
mainwindow.cpp:61: warning: unknown escape sequence '\S'
mainwindow.cpp:61: warning: unknown escape sequence '\s'
А без рег. выражений думаю слишком трудоемко будет...
Записан
http://kibsoft.ru
- Download the Qt Media Encoding Library here
The apps that were written using QtMEL:
http://srecorder.com
- Screen recording software
Alp
Гость
Re: Составить регулярное выражение
«
Ответ #3 :
Декабря 10, 2009, 16:58 »
Цитата: kibsoft от Декабря 10, 2009, 16:54
Пишет так:
Цитировать
mainwindow.cpp:61: warning: unknown escape sequence '\S'
mainwindow.cpp:61: warning: unknown escape sequence '\s'
А без рег. выражений думаю слишком трудоемко будет...
На эти ворнинги можно забить.
Записан
Rcus
Гость
Re: Составить регулярное выражение
«
Ответ #4 :
Декабря 10, 2009, 17:00 »
Цитата: kibsoft от Декабря 10, 2009, 16:54
Пишет так:
Цитировать
mainwindow.cpp:61: warning: unknown escape sequence '\S'
mainwindow.cpp:61: warning: unknown escape sequence '\s'
А без рег. выражений думаю слишком трудоемко будет...
Цитата: Assistant
Note: The C++ compiler transforms backslashes in strings. To include a \ in a regexp, enter it twice, i.e. \\. To match the backslash character itself, enter it four times, i.e. \\\\.
Записан
kibsoft
Хакер
Offline
Сообщений: 625
Re: Составить регулярное выражение
«
Ответ #5 :
Декабря 10, 2009, 17:01 »
Вроде придумал вариант:
Читаю строку, убираю все пробелы и выделяю нужное
Т.е. я знаю, что после M будет идти число до двоеточия и т.д.
Но кто предложит через регулярные выражения - буду рад заюзать
Записан
http://kibsoft.ru
- Download the Qt Media Encoding Library here
The apps that were written using QtMEL:
http://srecorder.com
- Screen recording software
uriel
Гость
Re: Составить регулярное выражение
«
Ответ #6 :
Декабря 10, 2009, 21:49 »
Просто я Вам написал регулярку, как она есть. А если это нужно запихнуть в код на C++, то следует чуть-чуть её преобразовать: "^(\\S*)\\s*([0-9.]*): (.*)$".
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...