Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
#1

Регулярное выражение - C++

07.11.2013, 11:39. Просмотров 262. Ответов 4
Метки нет (Все метки)

Добрый день! Помогите расшифровать регулярное выражение, что оно ищет.

C++
1
(;.*|[^А-Яа-я\\d\\s\\Q. \\E,-].*[^А-Яа-я\\d\\s\\Q. \\E,-]|[\\Q. \\E№,])+
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2013, 11:39     Регулярное выражение
Посмотрите здесь:

Регулярное выражение - C++
Дана последовательность (-1.2+3.0)+2-8/6. Надо разбить строку на символы и числа. Как нужно отредактировать этот шаблон, чтобы число с...

Регулярное выражение - C++
Пишу под Qt и получил такую проблему. Почему данный код не выводит чего либо в консоль?: QString data("<div class=\"text\">xxx:<br>ну...

Составить регулярное выражение - C++
Нужно составить регулярку: проверить является ли строка индентификатором в C++ длиной не более 33 символов. Считается что индентификатор...

Не работает регулярное выражение - C++
Здравствуйте, есть метод с регулярным выражением: bool Library::ValidGenreCode(std::string genreCode) { const std::string genreCodeExp...

Составить регулярное выражение - C++
Здравствуйте, помогите пожалуйста составить регулярное выражение для поиска фамилии и инициалов, например: Иванов И. И. Всё, что я смог...

Регулярное выражение boost::regex - C++
Здравствуйте форумчане. Не получается написать регулярное выражения для разбора такой строки: g=p1#s=p1,p2#t=p1 g, s, t - имена...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Raali
623 / 327 / 34
Регистрация: 06.07.2013
Сообщений: 1,056
Завершенные тесты: 1
07.11.2013, 11:53     Регулярное выражение #2
C++ как то связан вообще с этим?
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
07.11.2013, 11:54  [ТС]     Регулярное выражение #3
В общем нет, но в моем случае просто встретил в коде проекта и не могу понять, что он ищет.
ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
07.11.2013, 13:12     Регулярное выражение #4
Peperovich,
Маска первого выражения (;.*)
; - выражение начинаеться с точки запятой
.* - может быть любое количество символов так же может и не быть.
| - символ выбора на этом маска первого выражения закончилась начинаеться маска второго выражения([^А-Яа-я\\d\\s\\Q. \\E,-№].*[^А-Яа-я\\d\\s\\Q. \\E,-№])
[^А-Яа-я\\d\\s\\Q. \\E,-№] - означает что не в начале строки не может быть символ от A-Я а-я , цифра, эти метасимволы s Q Е смотри в справке, , - №].
.* - любое количество символов.
[^А-Яа-я\\d\\s\\Q. \\E,-№] - то же самое после любого количества символов не может быть символ те которые перечислен в кватратных скобках.
| - снова конец выражения маски, начало новогй маски [\\Q. \\E№,]
[\\Q. \\E№,]соответствует одному символу перечисленому в скобках. Q Е - смотри справочник что это за метасимволы, ну № b ,

Делаем выводы данное РВ ищет выражения трех видов:
1. начало ; затем любой текст.
2. символ не входящий в скобки [^А-Яа-я\\d\\s\\Q. \\E,-№], потом любой текст и снова символ не входящий в скобки [^А-Яа-я\\d\\s\\Q. \\E,-№].
3. ну и символу в скобках [\\Q. \\E№,].

Все выражение как видно находиться в сохраняющих скобках - сохраняется.
Плюсик в конце означает что выражение может совпасть как один раз так может и много раз, но гарантирует что оно совпадет хотя бы один раз.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2013, 15:02     Регулярное выражение
Еще ссылки по теме:

Вырезать символ из строки, регулярное выражение - C++
Подскажите пожалуйста как из строки std::string s = "string\.txt"; вырезать сиивол "\"

Написать регулярное выражение для поиска строки - C++
Доброго времени суток. Изучаю регулярные выражения. Столкнулся с проблемой. Как написать рег выр для поиска строки "port=1234" или " port...

Составить регулярное выражение под приведенные требования - C++
Может ли кто-нибудь написать или подсказать, как пишется регулярное выражение для следующих условий: 1) Русские буквы с различением...

Регулярное выражение для парсинга слов, заключенных в звездочки - C++
помогите составить регулярное. Необходимо, чтобы оно выдергивало из текста слова, расположенных между звездочек например: текст :...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Jazz411
85 / 33 / 3
Регистрация: 12.03.2011
Сообщений: 234
Записей в блоге: 2
07.11.2013, 15:02     Регулярное выражение #5
Raali, представь что ты работешь с Boost или Qt(но буст круче), ответ выходит сам собой
Yandex
Объявления
07.11.2013, 15:02     Регулярное выражение
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru