У меня есть (возможно) файл определения с разделением на строки, который имеет следующий подобный шаблон:
group-definition "first-regex" "second-regex"
оба под-регулярные выражения являются действительными регулярными выражениями, и мне нужно проверить синтаксис "main".Возвращение Python должно дать мне следующие данные:
- фактический синтаксис определения группы
- первое регулярное выражение, которое мне понадобится для дальнейшей обработки в качестве отдельного регулярного выражения
- второе регулярное выражение, которое мне понадобится еще раз обработать как первое
Кроме того, определения под-регулярных выражений могут использовать как одинарные, так и двойные кавычки, поэтому следующий синтаксис также может быть правильным:
definition "first-regex.*" 'second-regex[0-9]' #some comment
Мне также нужно выяснить, является ли синтаксис каким-то образом правильным, поэтому следующая строка не будет распознана как правильная:
something-right "something wrong' 'really-\.wrong" wtf
Это потому, что мне нужно 2 регулярных выражения для обработкивпоследствии и без добавления каких-либо дополнительных данных (если это не комментарий, начинающийся с "#" или ";").
К сожалению, мой опыт с регулярными выражениями не настолько глубок, но я знаю, что используя что-то подобноене будет работать так, как ожидалось:
[\.]* (\".+?\")|(\'.+?\')[\ ](\".+?\")|(\'.+?\')
Полагаю, мне нужны более глубокие знания о том, как работают подгруппы регулярных выражений, но я пока не смог понять, как их правильно настроить.
Я знаю, что существует множество вопросов и ответов по этой теме, но я не смог найти правильный контекст поиска для такого рода проблемы.