Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
 Аватар для Ales'hon'ne
159 / 152 / 50
Регистрация: 03.08.2011
Сообщений: 299
Записей в блоге: 14

Проверка регулярного выражения

27.05.2012, 16:16. Показов 1260. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста проверить регулярное выражение на правильность. Оно вроде бы работает, но мало ли.
Цель выражения - проверка верности условия выборки файлов. Примеры:
Все файлы из папки "C:/books/" и подпапок с расширениями "html" или "htm" и содержащие в имени "Михаил Булгаков" или "Mikhail Bulgakov":
from "C:/books/" and sub get:[ext:("html", "htm"), name:(*+"Михаил Булгаков"+*, *+"Mikhail Bulgakov"+*)]
Все файлы из папки "D:/Music/Mozart/" без подпапок с расширением "flac":
from "D:/Music/Mozart/" get:[ext:("flac")]
Все файлы из папки "C:/" и подпапок с расширениями "sys", "dll" или "drv" или с именем, оканчивающимся на "32":
from "С:/" and sub get:(ext:("sys", "dll", "drv"), name:(*+"32"))
Регулярное выражение у меня получилось такое:
\s*from\s+\".*?\"\s+(and\s+sub)?\s+get\s *\:\s*(\(|\[)((\s*(ext|name)\s*\:(\(|\[)(.*?\,)*?(.*?\s*)(\)|\])\s*)\s*\,?)+?(\)|\])\s*
Парсер выражения - TRegEx из Delphi XE2
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.05.2012, 16:16
Ответы с готовыми решениями:

Интервал между двумя числами в виде регулярного выражения
Доброго времени суток! Есть два spinedit, куда я ввожу два числа,допустим 680 и 15693. Можно ли составить регулярку, чтобы она описывала...

проверка регулярного выражения
Здравствуйте, учу конечные автоматы. Всретилась с такой задачей : необходимо описать автомат и написать функцию, которая бы принимала...

Зависает проверка регулярного выражения
Зависает проверка регулярного выражения (среда перестаёт отвечать). Выражение (проверка формата email):...

1
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
27.05.2012, 16:23
Зачем заэкранированы кавычки " и запятые , ?

".*?" лучше заменить на "[^"]*" .

(\(|\[) и (\)|\]) лучше писать в виде [\(\[] и [\)\]] соответственно.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.05.2012, 16:23
Помогаю со студенческими работами здесь

Проверка e-mail с помощью регулярного выражения
Здравствуйте, товарищи форумчане! Появилась небольшая проблема. А точнее - нужно проверить удовлетворяет ли e-mail условию. Вот...

Проверка регулярного выражения на полное соответствие строке
Здравствуйте! Есть регулярное выражение для MAC-адреса: "({2}(|$)){6}$|({4}(|$)){3}". Как мне проверить точное совпадение строки с этим...

Реализация регулярного выражения
В общем вот задание: Разработать программу, которая вычисляет количество строк во входном текстовом файле, со- стоящих из нулей, единиц...

Составление регулярного выражения
Всем привет. Второй день бьюсь с регуляркой, уже бесить начинает. Есть HMTL в нем нужно найти кусок текста и только его: Часть html из...

Шаблон регулярного выражения
последовательность символов, удовлетворяющая условиям: • первым символом является либо «;» (точка с запятой) либо «:» (двоеточие) ровно...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru